Я установил несколько NSUserDefaults в моем приложении, которые работают по большей части. NSUserDefaults вызывается из одного ViewController и реализуется на другом (например, в игре с выбором уровня). Кажется, что это работает хорошо, пока пользователь не нажмет кнопку «Назад» на экране выбора уровня. Когда они попытаются вернуться на уровень, выберите viewController, NSUserDefaults не будут загружены на экран. Вот мой код:NSUserDefaults не загружается после выхода из приложения
LevelSelectViewController:
- (void)viewDidLoad
{
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults synchronize];
[super viewDidLoad];
}
- (void)Level1DidFinish:(Level1 *)controller
{
[self dismissModalViewControllerAnimated:YES];
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSInteger rank = [userDefaults integerForKey:@"levelRank"];
{
if (rank == 1) {
button2.hidden = NO;
}
}
}
Level1ViewController:
{
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setInteger:1 forKey:@"levelRank"];
}
Итак, я бы положил что-нибудь в viewDidLoad или просто оставил его пустым? –
Ничего, я понял, что мне нужно делать. Спасибо за помощь. –