在UIViewController中调用委托方法

时间:2014-01-15 18:41:33

标签: ios uiview nstimer

我有一个应用程序,我使用UIView的子类。在这个子类中,我创建了一个NSTimer,在计时器的selector方法中,我调用了UIViewController中创建子类实例的方法。我遇到的问题是UIViewController在导航控制器中,如果应用程序偏离了有问题的视图控制器,一旦定时器尝试在nil视图控制器中调用方法,应用程序就会崩溃。

这是我在UIView子类中的计时器方法

- (void)timerMethod:(NSTimer *)localTimer
{
    secondCount++;
    __weak MySubclass *weakSelf = self;
    [weakSelf.delegate updateTime:secondCount];
}

如何解决此问题?在此先感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

当离开视图控制器时,使计时器失效。

使用NSTimer invalidate方法停止接收器再次触发并请求将其从运行循环中删除。