我首先在“设置”应用中进行了更改, 当我的应用程序稍后进入前台时,将调用此方法:
-(void)appWillEnterForeground:(NSNotification *) notification{
//get standardUserDefaults
NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
//save all modification
[defaults synchronize];
//change the UI
[self refreshFields];
}
下面的方法只是刷新UI
-(void)refreshFields{
//get standardUserDefaults
NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
//get all the preference value
self.nameLabel.text=[defaults stringForKey:@"name_preference"];
}
我发现我获得的值是旧值而不是我刚刚在“设置”应用中设置的值。 但是当我重新启动应用程序时,它将获得最新的默认值
我只想要一旦我更改了设置中的设置,我的应用程序将在应用程序再次进入前景时获得更改。
答案 0 :(得分:0)
在我将Xcode升级到最新的8.1并使用Xcode8.1提供的最新模拟器后,这个问题已经消失了,一切正常!所以我想这是旧的Xcode6测试版的问题和模拟器。