[英]what is the best way to store data on iphone with a set of preloaded values which must be altered from the program
使用一组预加载值在iphone上存储数据的最佳方法是什么?必须从程序中更改?
我们可以将值预加载到coredata数据库中。如果是的话
有可能使用coredata ..... 查看此链接以使用coredata
如果使用Core Data,您可以在创建NSPersistentStoreCoordinator之前检测核心数据支持文件是否存在,如果没有,则在创建持久性存储协调器之前将捆绑包中的默认版本复制到位,或者在创建之后使用代码插入必要的对象NSManagedObjectContext。 对于后者,这可能看起来像这样:
BOOL insertDefaultObjects = NO;
if (managedObjectContext == nil) {
if (persistentStoreCoordinator == nil) {
NSString *storePath = /* ... */;
insertDefaultObjects = ![[NSFileManager defaultManager] fileExistsAtPath:storePath];
persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:managedObjectModel];
/* ... and so on ... */
}
managedObjectContext = [[NSManagedObjectContext alloc] init];
[managedObjectContext setPersistentStoreCoordinator:persistentStoreCoordinator];
if (insertDefaultObjects) [self insertDefaultObjectsIntoContext:managedObjectContext];
}
insertDefaultObjectsIntoContext:
只使用标准的Core Data方法创建必要的对象并将它们保存到Core Data存储中。
如果您正在使用其他类型的数据存储,例如xml文件,plist等,则同样的一般想法成立:检查文档或应用程序支持目录中是否存在该文件,或检查“复制的默认值”如果文件可以被用户删除,则键入NSUserDefaults,并在必要时从应用程序包中复制默认版本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.