Objective c NSTimer不失效

Objective c NSTimer不失效,objective-c,nstimer,Objective C,Nstimer,我有一个名为timer的NSTimer,我试图在int毫秒数达到217时使其无效。我已经调整了217的其他数字,它的工作。只是不在217号。毫秒从5000开始,所以总是超过217 代码: 提前感谢使用计时器,始终测试大于或小于。测试精确等效性假定计时器在您需要时准确触发。由于硬件或软件计时器分辨率或系统上发生的其他事情,这可能不会发生。如果将毫秒更改为218,它听起来会工作吗? if (milliseconds == 217) { [timer invalidate];

我有一个名为timer的NSTimer,我试图在int毫秒数达到217时使其无效。我已经调整了217的其他数字,它的工作。只是不在217号。毫秒从5000开始,所以总是超过217

代码:


提前感谢

使用计时器,始终测试大于或小于。测试精确等效性假定计时器在您需要时准确触发。由于硬件或软件计时器分辨率或系统上发生的其他事情,这可能不会发生。

如果将毫秒更改为218,它听起来会工作吗?
if (milliseconds == 217) {
        [timer invalidate];
        [self explosion];
        bomb.hidden = YES;
        button.enabled = NO;
        NSURL *musicFile2;
        musicFile2 = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"Explosion" ofType:@"wav"]];
        audioPlayer2 = [[AVAudioPlayer alloc] initWithContentsOfURL:musicFile2 error:nil];
        audioPlayer2.volume = 1;
        [audioPlayer2 play];
    }