В этом коде предупреждение действие проявляется каждый раз, когда приложение станет активным:presentViewController не работает в viewDidLoad
- (void)viewDidLoad {
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(applicationDidBecomeActive:)
name:UIApplicationDidBecomeActiveNotification
object:nil];
}
- (void)applicationDidBecomeActive:(NSNotification *)notification
{
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Please make your choice"
message:@"Would you like a cup of coffee?"
preferredStyle:UIAlertControllerStyleActionSheet];
UIAlertAction *yesAction = [UIAlertAction actionWithTitle:@"YES"
style:UIAlertActionStyleDefault
handler:^(UIAlertAction *action) {
NSLog(@"You tapped YES");
}];
UIAlertAction *maybeAction = [UIAlertAction actionWithTitle:@"MAYBE"
style:UIAlertActionStyleDefault
handler:^(UIAlertAction *action) {
NSLog(@"You tapped MAYBE");
}];
UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"Cancel"
style:UIAlertActionStyleCancel
handler:nil];
[alertController addAction:yesAction];
[alertController addAction:maybeAction];
[alertController addAction:cancelAction];
[self presentViewController:alertController animated:YES completion:nil];
}
Кроме того, все работает, как ожидается, если перенести блок кода в UIAlertController в viewDidAppear метод ,
Но если я двигаю UIAlertController в viewDidLoad:
- (void)viewDidLoad {
UIAlertController *alertController [...]
[...]
[self presentViewController:alertController animated:YES completion:nil];
}
это не делает работы. Предупреждение не отображается.
У вас есть вопросы? Пока вы только что сделали некоторые заявления. – rmaddy
Вопрос: почему предупреждение не отображается при вызове в viewDidLoad? – RikiRiocma
Вы видите какое-либо сообщение в консоли при попытке отобразить предупреждение из 'viewDidLoad'? – rmaddy