为首次应用启动保存和加载标签
Saving and loading label for first app launch
我正在使用 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"];
如果您知道 myString
的值,那么您可以将默认值设置为包的一部分,或者当您尝试检索它时,使用默认值(或显示 'unknown' ) 如果返回值为 nil
显然,第一次应用是 运行,NSUserDefaults
中没有值。只需像这样更新您的 viewDidLoad
方法:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *title = [defaults objectForKey:@"myString"];
if (!title) {
title = @"Some Default Title"; // update as needed
}
label.text = title;
我正在使用 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"];
如果您知道 myString
的值,那么您可以将默认值设置为包的一部分,或者当您尝试检索它时,使用默认值(或显示 'unknown' ) 如果返回值为 nil
显然,第一次应用是 运行,NSUserDefaults
中没有值。只需像这样更新您的 viewDidLoad
方法:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *title = [defaults objectForKey:@"myString"];
if (!title) {
title = @"Some Default Title"; // update as needed
}
label.text = title;