禁用NSTimer的正确方法是什么?

时间:2011-12-09 15:53:18

标签: ios4 nstimer invalidation

我正在编写一个应用程序,其中主视图控制器有几个控制不同事件的NSTimers。这很好用,除了一些奇怪的情况,当我从导航堆栈中弹出这个主视图控制器时,计时器似乎没有被禁用。

我的问题是:无效或禁用NSTimer的正确方法是什么,以便不再调用它?

现在,我实例化一个像这样的NSTimer:

alertViewTimer = [NSTimer scheduledTimerWithTimeInterval:2 target:self selector:@selector(alertTimer) userInfo:nil repeats:YES];

我使用此宏来使NSTimer无效:

#define TimerInvalidateAndNil(A) \
if(A != nil) \
{\
if([A isValid])\
{\
[A invalidate]; \
}\
A = nil; \
}

0 个答案:

没有答案