标题很好解释它。我是否需要首先序列化对象,还是有可能?NSUserDefaults是否可以使用自定义对象来保存NSArray?
5
A
回答
11
你必须编码/解码与你的目标对象(这是你的阵列)和归档阵列的NSData。
只需添加
<NSCoding>
到您的对象的类(阵列中),并按照你的编译器的警告:d
然后存档您的数组是这样的:
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:yourArray];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:data forKey:@"yourKey"];
NSArray *array= [NSKeyedUnarchiver unarchiveObjectWithData:[defaults objectForKey:@"yourKey"];
看看这个出来http://soff.es/archiving-objective-c-objects-with-nscoding
1
您需要序列化它。
从苹果文档NSUserDefaults的:
的类NSUserDefaults的提供用于访问公共类型,例如浮标方便的方法,双打,整数,布尔值,和URL。一个默认对象必须是一个属性列表,也就是一个实例(或集合的实例组合):NSData,NSString,NSNumber,NSDate,NSArray或NSDictionary。如果你想存储任何其他类型的对象,你通常应该将其存档以创建一个NSData实例。有关更多详情,请参阅首选项和设置编程指南。
1
1
是的,这是可能的,只是你必须同时存储&检索其采取NULL值的照顾,
相关问题
- 1. 将NSArray保存为NSUserDefaults问题(使用数组中的自定义对象)
- 2. 在NSUserDefaults中存储我的自定义对象的NSArray
- 3. 保存自定义对象以在NSUserDefaults的斯威夫特
- 4. 可以将UIFont对象保存到NSUserDefaults
- 5. 是否可以在NSUserDefaults中保存NSManagedObject?
- 6. 是否可以使用JPA来保存DSL Java对象?
- 7. 检查NSArray中的自定义对象是否存在NSString
- 8. 在NSUserDefaults中存储自定义对象
- 9. 使用IsloatedStorageSettings保存自定义对象
- 10. 是否可以在自定义助手中使用HtmlHelper对象?
- 11. 如何在NSUserDefaults中保存“自定义类对象”的NSMutableArray?
- 12. NSUserDefaults无法保存和读取我的自定义对象
- 13. 问题与保存自定义对象NSUserDefaults的进
- 14. 将自定义对象保存到NSUserDefaults中
- 15. 是否可以使用自定义分配运算符来创建STACK对象?
- 16. 使用nscoder编码自定义对象并保存到nsuserdefaults加密?
- 17. 使用NSUserDefaults保存MPMediaItemCollection对象
- 18. NSUserDefaults是否被iCloud自动保存?
- 19. iCloud:是否可以将KVS用于自定义对象?
- 20. 将NSArray保存到NSUserDefaults不起作用
- 21. 将包含另一个自定义对象的自定义对象保存到NSUserDefaults中
- 22. 在Monotouch中,是否可以将通用列表保存到NSUserDefaults?
- 23. NSArray initWithObjects:是否保留对象?
- 24. 如何保存自定义对象数组并将其存储在NSUserDefaults的 - iPhone
- 25. 是否可以使用自定义表单来保护Apache上的目录?
- 26. NSArray的排序与自定义对象
- 27. 过滤自定义对象的NSArray
- 28. 排序NSArray的自定义对象
- 29. 是否可以在Doxygen中创建自定义对象类型?
- 30. 使用Monotouch将自定义列表保存在NSUserDefaults中
不忘记[默认同步] – Jacky 2014-06-13 22:35:20
感谢他帮我很多 – 2016-06-14 12:47:15
它不是保存整数值 – 2016-10-27 10:48:20