我有一些代码,我从设置包中读取切换值,但在某些情况下,它读取的值不正确。
这是我的代码看起来的样子,它位于我的应用代理 applicationDidBecomeActive
NSUserDefaults *settings = [NSUserDefaults standardUserDefaults];
NSNumber *branchString = [settings objectForKey:@"signout"];
BOOL userSignOut = [[settings objectForKey:@"signout"] boolValue];
NSLog(userSignOut ? @"Yes" : @"No");
当应用程序首次加载时会发生什么?否然后当我切换到设置并将我的切换转到YES时,当我重新登录时,我仍然得到否但是,如果我再次在设置和我的应用之间切换,只需触摸开关设置,当我得到是时,即使它应该早一步发生。
答案 0 :(得分:0)
设置值时是否使用此功能?
[[NSUserDefaults standardUserDefaults] setObject:(id) forKey:(NSString *)];
[[NSUserDefaults standardUserDefaults] synchronize];
答案 1 :(得分:0)
您可以使用NSUserDefaultsDidChangeNotification作为观察者。