簡體   English   中英

使用一組必須從程序中更改的預加載值在iphone上存儲數據的最佳方法是什么

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM