Ios 如何暂停一个正在运行的NSTimer,然后恢复它?
我有一个定时器去执行一个无效的声明。里面还有一个计时器。我想暂停正在发射或即将发射的信号,然后继续发射Ios 如何暂停一个正在运行的NSTimer,然后恢复它?,ios,objective-c,nstimer,Ios,Objective C,Nstimer,我有一个定时器去执行一个无效的声明。里面还有一个计时器。我想暂停正在发射或即将发射的信号,然后继续发射 movement3 = [NSTimer scheduledTimerWithTimeInterval:0.2 target:self selector:@selector(jone) userInfo:nil repeats:NO]; - (void)jone{ [jumperguy setImage:[UIImage imageNamed:@"jumperguy_a_a3.png"]
movement3 = [NSTimer scheduledTimerWithTimeInterval:0.2 target:self selector:@selector(jone) userInfo:nil repeats:NO];
- (void)jone{
[jumperguy setImage:[UIImage imageNamed:@"jumperguy_a_a3.png"]];
movement4 = [NSTimer scheduledTimerWithTimeInterval:0.2 target:self selector:@selector(jtwo) userInfo:nil repeats:NO];
}
您只能使对象无效以停止它。您可以有两种方法,例如:
-(void) pauseTimer:(NSTimer *) timer {
[timer invalidate];
timer = nil;
}
-(void) resumeTimer:(NSTimer *) timer {
timer = [NSTimer scheduledTimerWithTimeInterval:0.2 target:self selector:@selector(jone) userInfo:nil repeats:NO];
}
@Lyndsey Scott在我失败之前我尝试过实现它。可能是做错了什么。我有一些错误。请发布您的确切问题和真实代码,因为您的评论表明您正在执行与您发布的问题不同的操作。无法暂停或恢复计时器,请查看您的问题被标记为的重复项。我想检查哪个计时器正在运行,以便使其无效,然后重新启动计时器。如上所述,我说我有多个定时器。所以,当一个计时器完成后,它会转到另一个计时器,这个计时器位于一个无效语句中,依此类推。我很难理解你在试图做什么。你能给我们一个例子场景,包括你的其他定时器吗?问题中的1行代码甚至不是一个重复计时器!它只运行一次,就这样。“当前正在运行的计时器”是什么意思?!例如,我有多个定时器触发,以设置每个定时器中的图像,我想停止定时器,使其在当前图像上停止。然后重新启动计时器,这样计时器就可以继续工作了。@Tylerschouenau您需要用更具描述性的解释和您正在使用的完整代码更新您的问题,或者找到一种新的方法来实现您正在尝试做的事。我还是不明白你想在这里实现什么。“我有多个定时器触发来设置每个定时器中的图像”对我来说毫无意义。你怎么能有一个“在每个计时器中的图像”?你说的是不同的NSTimer对象还是其他什么?是的,不同的图像在不同的NSTimer中。