`
文章列表
IOS数据持久化方式大概有5种: 1)User Defaults 2)属性列表 3)归档 4)sqlite3数据库 5)coreData 其实1)与2)都是用.plist属性文件保存数据,只是操作方式及保存位置不同,这5种方式的使用情景及其优缺点,后面的博文会逐一进行对比分析。 下面首先演示第一种方式User Defaults。 实现的功能:1)演示NSUserDefaults持久化数据。 关键词:数据持久化 NSUserDefaults 1、新建一个Sigle View Application,命名为Persistence_NSUserDefaults,工程结构如下: [i ...
这篇博客实现的是在项目中调用C文件来实现两个数的相加。 本文仅供参考,如果有不足的地方,欢迎指出。 主要有这么几个步骤: 步骤一: 在你的工程中新建一个类,这个类有两个作用,1.通过这个类,和本地C/C++代码打交道,实现代码结构上的耦合。2.javah通过这个类生成.h文件,你可以根据这个.h文件来编写.c文件。 步骤二: 在.c文件编写好了以后,我们就开始编写Android.mk文件,这个文件用来指定.c文件的位置。即告诉NDK,要被编译的.c文件在哪里。 步骤三: 使用cygwin编译生成库文件(.so),成功以后,拷贝到你的项目的libs文件夹下,你就可以在 ...
在网络上查找的环境搭建的步骤以及命令很多都过时了,今天自己安装了以后,将步骤记录在这里供大家参考。本教程中的NDK版本为android-ndk-r8c 需要准备的东西: NDK Cygwin NDK需要一个C/C++编译环境才能使用。因此在Windows上不仅需要安装NDK,还需要安装相应的C/C++环境,这就是Cygwin。 NDK下载地址(直接在sdk中搜索NDK,第一条就是): http://developer.android.com/tools/sdk/ndk/index.html Cygwin下载地址: [url]http://www.cygwin.com/ ...
实现的功能:1)打开ActionSheet后展示PickerView,进行选择操作。 关键词:ActionSheet PickerView 1、新建一个Sigle View Application,命名为PickerInActionSheet,工程结构如下: [img] [/img] 2、修改ViewController.xib,添加一个TextField控件。 3、修改ViewController.h,如下: #import <UIKit/UIKit.h> @interface ViewController : UIViewControlle ...
同样的需求,做Android客户端时在没有文本框时也可以通过inputMethodManager.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);调出系统键盘。 但是,IOS中貌似没有这样的接口,所以可以采用“隐藏文本框”的方式,调出系统键盘,具体实现如下: 1、在ViewController.xib上放置一个ImageView和一个UITextField(代码中将其设置为隐藏),如下: [img] [/img] 2、ViewController.h如下: #import <UIKit/UIKit.h> ...
实现的功能:1)演示多线程NSOperation&NSOperationQueue开发;2)子线程中执行下载图片工作,图片下载完成前显示等待框和下载进度条; 关键词:多线程 NSOperation NSOperationQueue 等待框 效果图如下: [img] [/img] [img] [/img] 1、新建视图控制器ViewController(不带xib),作为根视图控制器,通过ViewController的-(void)loadView方法构建UI。 2、新建继承自NSOperation且实现协议NSURLConnectionDelegate的类D ...
实现的功能:1)演示多线程NSThread开发;2)子线程中执行下载图片工作,图片下载完成前显示等待框; 关键词:多线程 NSThread 等待框 运行效果图: [img] [/img] [img] [/img] 1、新建视图控制器ViewController(不带xib),作为根 ...
实现的功能:1)演示多线程开发。2)子线程中模拟耗时操作,然后通知主线程更新进度条。 关键词:多线程 NSThread 定时器 效果图: [img] [/img],[img] [/img] 1、新建视图控制器ViewController.m(不带xib),作为根视图控制器,通过ViewController的-(void)loadView方法构建UI,ViewController.h如下: #import <UIKit/UIKit.h> @interface ViewController : UIViewController{ CGFloat prog ...
这是iPhone开发多视图技术系列最后一篇,说说使用SegmentedControl实现视图切换。 实现的功能:通过UISegmentedControl模拟多视图切换。 关键词:多视图UISegmentedControl UISegmentedControl是一个横向的组件,由多部分组成,每一部分都是一个独立的按钮,一般用来切换视图的显示模式或者在几项之间做单选。 这个控件并不是用来实现多视图切换的,实际开发中也几乎不用它来做多视图切换,此博文仅为模拟多视图应用。 1、创建一个Empty Application工程,命名为:MultiView-Navigation,如下图 [i ...
第一次使用某个App时,一般会有欢迎界面,向右滑动屏幕会出现该App的新增功能或功能介绍或使用帮助相关的界面。通过PageControl可以实现该效果。 实现的功能:通过PageControl,实现多视图切换。 关键词:多视图 PageControl UIPageContrller 1、创建一个Empty Application工程,命名为:MultiView-Navigation,如下图 [img] [/img] 2、选中工程中的Group MultiView-Tab,然后按住CMD(Windows键)+N,新建视图控制器PageControlViewControl ...
实现的功能:通过Navigation,实现多视图切换。这是使用最多的一种多视图实现方式。 关键词:多视图 Navigation UINagivationController 1、创建一个Empty Application工程,命名为:MultiView-Navigation,如下图 [img] [/img] 2、选中工程中的Group MultiView-Tab,然后按住CMD(Windows键)+N,新建视图控制器FirstViewController,如下图 [img] [/img] 3、依照上步操作,新建视图控制器SecondViewController ...
实现的功能:通过Tab Bar,实现多视图切换。 关键词:多视图 Tab Bar 1、创建一个Empty Application工程,命名为:MultiView-Tab,如下图 [img] [/img] 2、选中工程中的Group MultiView-Tab,然后按住CMD(Windows键)+N,新建视图控制器FirstViewController,如下图 [img] [/img] 3、依照上步操作,新建视图控制器SecondViewController 4、编辑FirstViewController.xib,在Bottom Bar显示出Tab Bar,然后 ...
实现的功能:1)通过弹出一个ModalView(模态视图),实现多视图;2)主界面上点击按钮弹出Info界面,在该界面上点击返回,返回到主界面。 关键词:多视图 MultiView模态视图 ModalView 1、创建一个Empty Application工程,命名为:MultiView-ModalView,如下图 [img] [/img] [img] [/img] 2、选中工程中的Group MultiView-ModalView,然后按住CMD(Windows键)+N,新建视图控制器MainViewController,如下图 [img] [/img] 3 ...
在开发中用单例存储项目中通用的全局变量是非常方便的,用法: SingleSample.h中, #import <Foundation/Foundation.h> @interface SingleSample : NSObject @property (nonatomic, retain) NSString *user; + (SingleSample *)sharedSingleSample; @end 在SingleSample.m中, #import "SingleSample.h" ...
使用presentModalViewControllerAnimated方法从A->B->C,若想在C中直接返回A,则可这样实现: C中返回事件: -(void) back { [self dismissModalViewControllerAnimated:NO];//注意一定是NO!! [[NSNotificationCenter defaultCenter]postNotificationName:@"backback" object:nil]; } 然后在B中, //在viewdidlo ...
Global site tag (gtag.js) - Google Analytics