我希望将精心设计的多级自定义对象保存到NSUserDefaults中。我的自定义类设置如下:
我需要将顶级“讲师”对象保存到NSUserDefault中,以便我可以访问它下面的整个数据层。我引用了this post,但我需要更多帮助才能解决问题。在那个例子中,他展示了两个不同的类和一些方法。这些方法是自己写入不同的自定义类吗?我将如何在我的应用程序中实际使用它?
我需要保存一个“讲师”对象,它有一个类的数组,里面装满了一系列学生。如何将一个教师对象保存到NSUserDefault中,以便我可以检索并重新加载它以供使用?
答案 0 :(得分:2)
所有对象(讲师,班级和学生)都需要采用并实施NSCoding协议。见this post for an implentation。正如@uchuugaka所说,听起来NSUserDefaults并不是存储这些数据的地方。
您仍然可以将数据序列化到磁盘,但只需将其写入单独的文件即可。 Apple的Archives and Serializations Programming Guide很适合学习这种方法的基础知识。
如果要保存的对象图要复杂得多,并且需要搜索和查询对象图,例如查找studentDoney> = 50且lastName以' A'开头的学生人数,然后您可能需要查看Core Data。但是,请注意Core Data是一个高级框架,因此它确实具有相当大的学习曲线。