ios 用NSUserDefaults做本地化搜索记录

来源:互联网 发布:4g网络接收器 编辑:程序博客网 时间:2024/06/08 04:51

效果图如下:
这里写图片描述
数据库实现这个比较简单,但是这点小东西就动用数据库有点兴师动众的”赶脚”,所以用单例对象NSUserDefaults持久化数组就可以。听起来很简单,事实上呢,也很简单。直接上代码吧。
1.先alloc一个输入框
这里写图片描述
关于这个输入框: 至少输入不能为空,点击搜索的时候要判断。根据需求也可限制输入长度,毕竟递给后台的时候是模糊搜索效率也会高些。
2.创建全局的单例对象和数组(接受字符串)
先说注意点:在NSUserDefault中,不能保存自定义对象,只可保存如NSArray,NSDictionary,NSInterger,NSString等数据,我们需要像在java 中一样序列化,在oc中序列化是NSCoding协议.
这里写图片描述
这里写图片描述
3.textfield的回车代理方法
这里写图片描述
输入不为空的方法,判断数组是否有相同的字符串,如果有,那么不添加,如果没有,将字符串插入到数组0的位置,将数组打包成data,放进单例中,持久化。
这里写图片描述
4.在每次视图即将出现的方法里面,从单例对象中提取数组,赋值给表。

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

0 0