self.timerProgress=[NSTimer scheduledTimerWithTimeInterval:50.0 target:self selector:@selector(stopProgressView) userInfo:nil repeats:NO];

-(void)stopProgressView
{
    if ([self.timerProgress isValid]) {
        [self.timerProgress invalidate];
        self.timerProgress=nil;
    }

}

当我尝试使NSTimer对象无效时,在按钮上单击
-(void)cancelTimer
{
       if ([self.timerProgress isValid]) {
            [self.timerProgress invalidate];
            self.timerProgress=nil;
        }
}

它不会变得无效。在间隔50之后,它将调用一次stopProgressView。
如何解决这个问题?

最佳答案

- (IBAction)stopTimer {
    if ([timerProgress isValid]) {
        [timerProgress invalidate];
    }
}

不要只使用self.timerProgress

10-08 12:25