我想存储我的编程变量,例如,图像文件集合,图像大小等。它可以在开发期间更改,但它不会在运行时更改。所以,我考虑使用一个plist。但是使用plist需要定期阅读,这似乎非常不方便。所以,我正在考虑在类文件中定义所有变量。你怎么看?有什么想法吗?太赫兹....
答案 0 :(得分:1)
[NSUserDefaults standardUserDefaults]是在运行期间有可能需要更新值的方法。
访问此内容非常快,您可以拥有一个持久存储的随机访问键值存储。如果不在运行时进行修改,则可以在模拟器的开发过程中直接编辑plist。
如果键值确实已修复,请使用应用包中的plist进行修改。您可以在启动期间加载内存,也可以按需加载:
NSString *someListingPath = [[NSBundle mainBundle] pathForResource:@"someList" ofType:@"plist"];
self.variableList= [[NSArray alloc] initWithContentsOfFile:someListingPath];
NSDictionary还有一个initWithContentsOfFile:方法来从plist加载数据。
您可以使用相同的技术从捆绑中加载图像。
您可能需要查看Bundle Programming Guide以获取更多提示。
答案 1 :(得分:0)
最简单的方法是创建一个数组或字典来保存应用程序信息。当应用程序启动时,将plist读入内存。当应用程序退出时,将集合写入plist。
您可能希望将图像保留在磁盘上,直到需要它们并将文件路径存储在集合中,以便您可以根据需要读取它们。
如果您需要存储少量信息或应用程序首选项信息,则可以使用NSUserDefaults。
对于更复杂的信息,您需要一个数据模型,即管理应用程序数据的专用对象。根据信息的复杂性,大小和结构,您可以(1)序列化对象(2)使用Core Data(3)使用SQL。