Вызов метода делегата в UIViewController
У меня есть приложение, в котором я использую подкласс UIView. В этом подклассе я создаю NSTimer, а в методе выбора таймера я вызываю метод в UIViewController, который создал экземпляр подкласса. У меня проблема в том, что UIViewController находится в контроллере навигации, и если приложение отходит от рассматриваемого контроллера представления, приложение вылетает, как только таймер пытается вызвать метод в контроллере нулевого представления.
Вот мой метод таймера в подклассе UIView
- (void)timerMethod:(NSTimer *)localTimer
{
secondCount++;
__weak MySubclass *weakSelf = self;
[weakSelf.delegate updateTime:secondCount];
}
Как я могу исправить эту проблему? Заранее благодарю за любую помощь!
1 ответ
Недействительный таймер, когда segues далеко от контроллера представления.
Используйте NSTimer invalidate
метод, который останавливает приемник от повторного запуска и запрашивает его удаление из цикла выполнения.