Я предполагаю, что ваше приложение аварийно завершает работу, поскольку у вас есть устаревший указатель на освобожденную UIAlertView
.Я предполагаю, что вы не сбрасываете переменную экземпляра, которая ссылается на UIAlertView
.
. Вы наверняка получили переменную экземпляра для сохранения указателя UIAlertView.Вам также необходимо установить свойство delegate
, например:
myAlert = [[UIAlertView alloc] initWithTitle:...];
myAlert.delegate = self;
[myAlert show];
// Now setup the timer
Ваш класс должен реализовывать протокол UIAlertViewDelegate , в частности, вам необходимо реализовать alertView:willDismissWithButtonIndex:
и / или alertView:didDismissWithButtonIndex:
(я бы использовал позже).В этом методе вы сбрасываете переменную экземпляра:
[myAlert release];
myAlert = nil;
// Also cancel timer
Отмена таймера уже не , что более важно, так как установка переменной на nil
является важной частью.Как только таймер сработает, он больше не выйдет из строя (но отмена таймера все равно будет хорошей идеей).