在 NSUserDefaults 中保存用户选择
Posted
技术标签:
【中文标题】在 NSUserDefaults 中保存用户选择【英文标题】:Saving users choices in NSUserDefaults 【发布时间】:2014-03-13 16:50:38 【问题描述】:您好,我目前正在开发一个应用程序,其中初始视图控制器是一个带有两个按钮的屏幕,一个用于一件事,另一个用于另一件事。每个按钮都指向一个新的视图控制器。我想要做的是让应用程序识别用户选择的按钮并保存,这样当用户下次打开应用程序时,它会直接进入新的视图控制器。
我知道我必须使用 NSUserDefaults,但我对编码很陌生,所以如果你们能详细解释一下,那将是完美的。
谢谢!
【问题讨论】:
你坚持哪一点?初始化它,在其中存储值,从中获取值?决定如何存储您的选择? 决定如何存储选择 【参考方案1】:点击按钮时:
- (void) buttonPressed: (id) sender
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:@"Something" forKey:@"SOME_KEY"];
[userDefaults synchronize];
您可以添加此代码来处理您想要的:
- (void)viewWillAppear:(BOOL)animated
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
if ([userDefaults objectForKey:@"SOME_KEY"] != nil)
if ([[userDefaults objectForKey:@"SOME_KEY"] isEqualToString:@"Something"])
// push one ViewController
else
// push the other one
【讨论】:
以上是关于在 NSUserDefaults 中保存用户选择的主要内容,如果未能解决你的问题,请参考以下文章
将 UIPickerView 选择保存到 NSUserDefaults swift
如何将 MPMediaItemCollection 保存到 NSUSerDefaults?
在 NSUserDefaults 中保存复选标记 - 动态 TableView