當我退出應用程序時,存儲在NSUserDefaults中的值不會保存。我保存了這樣的值:應用程序退出後NSUserDefaults不保存
[[NSUserDefaults standardUserDefaults] setValue:@"enabled" forKey:@"notifications"];
[[NSUserDefaults standardUserDefaults] synchronize];
即使應用程序退出後,如何存儲NSUserDefaults的某些內容?
這是我如何檢索值:
[[NSUserDefaults standardUserDefaults] valueForKey:@"notifications"]
前兩行不跑,因爲我把他們當按下按鈕來運行。當我轉到不同的視圖並返回到帶有按鈕的視圖時,它會返回我設置的值。
我明白了什麼是錯的。我在第一個視圖中有此代碼並假定它正常工作:
NSUserDefaults *Def = [NSUserDefaults standardUserDefaults];
NSString *Ver = [Def stringForKey:@"Version"];
NSString *CurVer = [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString*)kCFBundleVersionKey];
if(Ver == nil || [Ver compare:CurVer] != 0)
{
if(Ver == nil)
{
[[NSUserDefaults standardUserDefaults] setValue:@"disabled" forKey:@"notifications"];
}
}
哪裏是你把你的setValue價值寫?現在,您將其設置爲「已啓用」的字符串。你如何參考它? – Umitk
什麼時候該應用程序退出,以及如何運行相關的代碼(您確定它確實運行)? – Wain
什麼是nsuserdefaults的「通知」鍵的打印輸出? –