ios 用NSUserDefaults做本地化搜索记录

效果图如下:

数据库实现这个比较简单,但是这点小东西就动用数据库有点兴师动众的”赶脚”,所以用单例对象NSUserDefaults持久化数组就可以。听起来很简单,事实上呢,也很简单。直接上代码吧。
1.先alloc一个输入框
ios 用NSUserDefaults做本地化搜索记录_第1张图片
关于这个输入框: 至少输入不能为空,点击搜索的时候要判断。根据需求也可限制输入长度,毕竟递给后台的时候是模糊搜索效率也会高些。
2.创建全局的单例对象和数组(接受字符串)
先说注意点:在NSUserDefault中,不能保存自定义对象,只可保存如NSArray,NSDictionary,NSInterger,NSString等数据,我们需要像在java 中一样序列化,在oc中序列化是NSCoding协议.
ios 用NSUserDefaults做本地化搜索记录_第2张图片
ios 用NSUserDefaults做本地化搜索记录_第3张图片
3.textfield的回车代理方法

输入不为空的方法,判断数组是否有相同的字符串,如果有,那么不添加,如果没有,将字符串插入到数组0的位置,将数组打包成data,放进单例中,持久化。
ios 用NSUserDefaults做本地化搜索记录_第4张图片
4.在每次视图即将出现的方法里面,从单例对象中提取数组,赋值给表。

demo分享地址:
http://yun.baidu.com/share/link?shareid=250647388&uk=3645489950&third=15

你可能感兴趣的:(本地化,NSUserDefa,搜索记录)