У меня есть это в моем делегате приложения applicationDidFinishLaunching
метод:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if([defaults objectForKey:@"AcceptTC"] == nil){
NSDictionary *appDefaults = [NSDictionary dictionaryWithObject:@"NO" forKey:@"AcceptTC"];
[defaults registerDefaults:appDefaults];
}
, и у меня есть это в моем методе RootViewController viewDidLoad
:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if(![defaults boolForKey:@"AcceptTC"]){
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Notice" message:@"By using this application you agree to be bound by the Terms and Conditions as stated within this application." delegate:self cancelButtonTitle:@"No Deal" otherButtonTitles:@"I Understand",nil];
[alert show];
[alert release];
}
и мой делегат представления предупрежденияделает это:
if(buttonIndex == 0){
exit(0);
}
else{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:@"YES" forKey:@"AcceptTC"];
}
Однако, когда я нажимаю «Я понимаю» (кнопка индекс 1), а затем перезагружаю приложение, я все равно вижу предупреждение!Даже если я определенно установил значение YES.
Я понятия не имею, как это изменить.:( Я хочу, чтобы оно показывалось только в первый раз, когда пользователь запускает приложение - я не хочу показывать его каждый раз, когда они хотят его использовать.
Спасибо