我的应用程序的主界面取决于用户在Apple的设置应用程序中可以设置的一些设置。
如果用户从我的应用程序切换到设置应用程序并更改了一些设置,我尝试使用[[NSUserDefaults standardUserDefaults] valueForKey:@“someSetting”]在我的委托中的applicationWillEnterForeground:application方法中获取它们。但是在那时我仍然得到旧的设置值。稍后,如果我读取设定值,它已经是正确的。
Apple的“设置”应用中的设置到底是什么时候保存的?任何其他方法来实现相同的目标?
答案 0 :(得分:2)
我认为您不需要阅读applicationWillEnterForeground:application
中的NSUserDefaults,因为如果您返回到前台,应用程序就不会终止,因此您的所有设置仍然存在。
除此之外,我理解当应用程序关闭或调用HSUserDefaults
方法时存储synchronize
。
这是最好的方法,考虑到你的应用程序可以在后台终止,IMO,在你的applicationWillEnterBackground`中调用synchronize
。然后,如果你愿意的话,当你再次进入前景时,你可以把它们读回来(但不应该像前面所说的那样)。
您需要在applicationFinishedLaunching时阅读它们。