为首次应用启动保存和加载标签

时间:2016-03-17 13:58:30

标签: ios uilabel nsuserdefaults

我正在使用NSUserDefaults来保存单个标签,标签保存并加载完全正常,除非首次启动应用程序,因此例如当用户下载应用程序时,标签为空白,直到他们开始使用应用

是否可以使用NSUserDefaults为应用首次启动加载默认abel?

viewDidLoad中:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[label setText:[defaults objectForKey:@"myString"]];

IBAction为:

NSUserDefaults *defualts = [NSUserDefaults standardUserDefaults];
NSString *saveString = label.text;
[defualts setObject:saveString forKey:@"myString"];    

2 个答案:

答案 0 :(得分:0)

如果你知道myString想要什么价值,那么你可以将默认值设置为包的一部分,或者当你尝试检索它时,使用默认值(或显示' unknown&#39 ;)如果返回值为nil

答案 1 :(得分:0)

显然,第一次运行应用时,NSUserDefaults中没有任何值。只需更新您的viewDidLoad方法,如下所示:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *title = [defaults objectForKey:@"myString"];
if (!title) {
    title = @"Some Default Title"; // update as needed
}
label.text = title;