什麼是在iPhone應用程序長期記憶中保存幾個變量的最簡單方法?iPhone - 如何從應用程序保存用戶設置?
我有不同的SQLite數據庫運行的應用程序和應用程序,以節省最後一個活動的數據庫名稱,以便在用戶再次進入一個程序打開最後一個數據庫退出後我想要的。
這是一個有點不便於爲此創建一個特殊的數據庫,這些值存儲在裏面,因爲我只有一對夫婦的變量來存儲。
什麼是存儲這些變量的最簡單的方法?
預先感謝您。
什麼是在iPhone應用程序長期記憶中保存幾個變量的最簡單方法?iPhone - 如何從應用程序保存用戶設置?
我有不同的SQLite數據庫運行的應用程序和應用程序,以節省最後一個活動的數據庫名稱,以便在用戶再次進入一個程序打開最後一個數據庫退出後我想要的。
這是一個有點不便於爲此創建一個特殊的數據庫,這些值存儲在裏面,因爲我只有一對夫婦的變量來存儲。
什麼是存儲這些變量的最簡單的方法?
預先感謝您。
是NSUserDefaults的像這樣設置的最佳場所。
在我的頭文件,我想補充以下內容:
@interface myAppDelegate : NSObject <UIApplicationDelegate> {
...
NSString *databaseName;
}
extern NSString * const kDefaultDatabaseName;
extern NSString * const kAppDatabaseNameKey;
我在執行文件,我想補充以下內容:
NSString * const kDefaultDatabaseName = @"myDefaultDatabaseName";
NSString * const kAppDatabaseNameKey = @"kAppDatabaseNameKey";
@implementation myAppDelegate
+ (void) initialize {
if ([self class] == [MyAppDelegate class]) {
UIApplication* myApp = [UIApplication sharedApplication];
NSString *defaultDatabaseName = kDefaultDatabaseName;
NSMutableDictionary *resourceDict = [NSMutableDictionary dictionary];
[resourceDict setObject:defaultDatabaseName forKey:kAppDatabaseNameKey];
}
}
- (void) applicationDidFinishLaunching:(UIApplication *)application {
...
databaseName = [[NSUserDefaults standardUserDefaults] stringForKey: kAppDatabaseNameKey];
}
...
- (void) applicationWillTerminate:(UIApplication *)application {
...
[[NSUserDefaults standardUserDefaults] setObject:databaseName forKey:kAppDatabaseNameKey]
}
應用程序啓動時,如果沒有預 - 現有用戶默認值+initialize
會創建一個新的NSUserDefaults
字典,其中包含您在kDefaultDatabaseName
中設置爲默認數據庫的任何字典。
當應用程序完成啓動時,成員databaseName
採用NSUserDefaults
字典中設置的值。這可以是kDefaultDatabaseName
或運行應用程序後更新的任何內容。
當你運行你的應用程序,您的用戶可能的databaseName
值更改爲別的東西。
應用程序終止就在中,databaseName
值寫入NSUserDefaults
字典。下次打開應用程序時,databaseName
將採用新的更新值。
在將此更新寫入字典之前,您不必等待應用程序終止。例如,您可以在用戶將databaseName
更改爲新內容後立即執行此操作。但這取決於你。