У меня есть UIAlertView
с кнопкой перезагрузки с 2 кнопками - ОК и Отмена. Кнопка «Отмена» отлично работает, но когда я хочу добавить какое-либо действие (повторить игру), кнопка «OK» не работает, если это действие не будет NSLog
.Как я могу делать действия в кнопках UIAlertView?
Мой код в м. Файл:
- (IBAction)startAgainAction:(id)sender {
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Warning" message:@"Have you short that want start again the game?"
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:@"Cancel", nil];
[alert show];
}
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
// My OK button
if (buttonIndex == alertView.cancelButtonIndex) {
// Action to start the game again... (don't work)
[self viewDidLoad];
} else if (buttonIndex == alertView.firstOtherButtonIndex) {
// NSLog it's accept but not other actions...
NSLog(@"Cancel");
}
}
И да, я поставил UIAlertViewDelegate
протокол в час. file
Итак, почему viewDidLoad
не работает, когда он снова называет метод?
Почему я могу спросить, пытаетесь ли вы сами вызвать viewDidLoad? –
Кроме того, если вы не работаете, но NSLog делает, что-то не так с указанным действием. Отправьте код для этого и покажите, как вы его вызываете. –
Поскольку мне нужно перезагрузить игру, инициализируйте все, как и начало. – tixa