NSUserDefaults使用规范
2016-04-08 14:05
369 查看
NSUserDefaults 通常用来保存一下用户名,密码啥的,现在我想告诉大家的是,我们使用它的时候,充分考虑使用它可以保存数组,字典这样的功能。
保存数据的key须表示数据的名称、种类或用途!同类数据打包后用同一个key保存!
举例,此处使用的是讲array转为set的形式,没有这个对象,直接存会导致崩溃allObjects是转换的方法。
//举例子存储
NSUserDefaults *ud = [NSUserDefaults
standardUserDefaults];
NSMutableSet *groupBackImage = [NSMutableSet
setWithArray:[ud arrayForKey:kUD_GroupBackImage]];
[groupBackImage addObject:self.groupInfoModel.groupId];
[ud setObject:[groupBackImage
allObjects] forKey:kUD_GroupBackImage];
[ud synchronize];
//举例子取出
NSUserDefaults *ud = [NSUserDefaults
standardUserDefaults];
NSMutableSet *groupBackImage = [NSMutableSet
setWithArray:[ud arrayForKey:kUD_GroupBackImage]];
[groupBackImage removeObject:self.groupInfoModel.groupId];
[ud setObject:[groupBackImage
allObjects] forKey:kUD_GroupBackImage];
[ud synchronize];
举例,关于字典的存取
[self.topConversations
removeObjectForKey:model.chatId];
[[NSUserDefaults
standardUserDefaults] setObject:self.topConversations
forKey:kUD_TopConversations];
[[NSUserDefaults
standardUserDefaults] synchronize];
再来一发
[self.topConversations
setObject:[NSNumber
numberWithDouble:[NSDate
timeIntervalSinceReferenceDate]]
forKey:model.chatId];
[[NSUserDefaults
standardUserDefaults] setObject:self.topConversations
forKey:kUD_TopConversations];
[[NSUserDefaults
standardUserDefaults] synchronize];
保存数据的key须表示数据的名称、种类或用途!同类数据打包后用同一个key保存!
举例,此处使用的是讲array转为set的形式,没有这个对象,直接存会导致崩溃allObjects是转换的方法。
//举例子存储
NSUserDefaults *ud = [NSUserDefaults
standardUserDefaults];
NSMutableSet *groupBackImage = [NSMutableSet
setWithArray:[ud arrayForKey:kUD_GroupBackImage]];
[groupBackImage addObject:self.groupInfoModel.groupId];
[ud setObject:[groupBackImage
allObjects] forKey:kUD_GroupBackImage];
[ud synchronize];
//举例子取出
NSUserDefaults *ud = [NSUserDefaults
standardUserDefaults];
NSMutableSet *groupBackImage = [NSMutableSet
setWithArray:[ud arrayForKey:kUD_GroupBackImage]];
[groupBackImage removeObject:self.groupInfoModel.groupId];
[ud setObject:[groupBackImage
allObjects] forKey:kUD_GroupBackImage];
[ud synchronize];
举例,关于字典的存取
[self.topConversations
removeObjectForKey:model.chatId];
[[NSUserDefaults
standardUserDefaults] setObject:self.topConversations
forKey:kUD_TopConversations];
[[NSUserDefaults
standardUserDefaults] synchronize];
再来一发
[self.topConversations
setObject:[NSNumber
numberWithDouble:[NSDate
timeIntervalSinceReferenceDate]]
forKey:model.chatId];
[[NSUserDefaults
standardUserDefaults] setObject:self.topConversations
forKey:kUD_TopConversations];
[[NSUserDefaults
standardUserDefaults] synchronize];
相关文章推荐
- NSUserDefaults
- iOS中常用的四种数据持久化方法简介
- 我的本地化关于NSDefaults
- NSUserDefaults删除整个plist文件
- NSUserDefaults简介及如何使用 NSUserDefaults 存储自定义对象
- iOS数据保存的四种方式
- 有关NSUserdefaults使用时的问题记录
- 无限互联学习连载四 NSUserDefaults的使用
- iOS 使用NSUserDefaults存储mode 数组
- 关于NSuserdefault存储数据以及存储可变数据时的一些问题
- iOS-NSUserDefaults简单使用
- NSUserDefaults保存自定义对象
- NSUserDefault用法(能保存的数据)
- NSUserDefaults(数据存储)
- IOS使用NSUserDefaults保存用户登录数据时注意事项
- NSUserDefaults 数据存储及自定义对象的存储
- NSUserDefaults的使用
- iOS开发经验技巧之IOS中NSUserDefaults的用法(轻量级本地数据存储)
- iOS开发经验技巧之iOS页面间传值的方式(Delegate/NSNotification/Block/NSUserDefault)
- 永久性保存