iphone中没有现成的函数支持计时器的暂停和恢复。可以通过以下方法实现:
在.h文件中定义好你的Timer:
NSTimer *timer;
在你需要使用计时器的地方打开计时器:
timer = [[NSTimer scheduledTimerWithTimeInterval:2 target:self
selector:@selector(timerEvent)
userInfo:nil repeats:NO] retain];
timerEvent是计时器要触发的事件:
-(void)timerEvent
{
//你要实现的事件
}
停止掉计时器的代码:
if(timer!=nil)
{
if ([timer isValid])
{
[timer invalidate];
}
[timer release];
timer = nil;
}
需要恢复计时器的时候就重新new一个:
timer = [[NSTimer scheduledTimerWithTimeInterval:2 target:self
selector:@selector(timerEvent)
userInfo:nil repeats:NO] retain];
效率还OK,我是在0.1秒这个级别不断做以上的停止和恢复操作都没有问题哦!