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