[英]NSUserDefault - Not Able to fetch value
在tableView的didSelectRowAtIndexPath
方法中,我像這樣在NSUserDefault
保存了一些數據
UITableViewCell *selectedCell = [tableView cellForRowAtIndexPath:indexPath];
NSUserDefaults *storeData=[NSUserDefaults standardUserDefaults];
[storeData setObject:selectedCell.textLabel.text forKey:@"tpName"];
在另一個地方,我正在使用此代碼獲取此數據,
NSUserDefaults *storeData=[NSUserDefaults standardUserDefaults];
NSLog(@"tpName is %@",[storeData valueForKey:@"tpName"]);
但是在這個NSLog
我得到了null
值。 有人可以建議我我在哪里做錯了嗎?
在同步之前,不會將NSUserDefaults
寫入磁盤。 用戶默認值會定期自動同步,或者您可以手動調用它,如下所示:
UITableViewCell *selectedCell = [tableView cellForRowAtIndexPath:indexPath];
NSUserDefaults *storeData=[NSUserDefaults standardUserDefaults];
[storeData setObject:selectedCell.textLabel.text forKey:@"tpName"];
[storeData synchronize];
如果您在設置用戶默認值后不久退出了應用程序(沒有手動同步),那么您的standardDefaults
將不會在磁盤上更新。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.