ほとんどの場合、私のアプリで複数のNSUserDefaultを設定します。 NSUserDefaultsは1つのViewControllerから呼び出され、別のもの(レベル選択付きのゲームなど)に実装されます。これは、ユーザーがレベル選択画面で戻るボタンを押すまでうまくいくように見えます。彼らがレベルselect 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に何かを置くか、空白のままにしますか? –
心配しないで、私は何をする必要があるかを考え出しました。ご協力ありがとうございました。 –