有这样做的直接方式。
第1步:您可以在下面的方式兑现这创建的属性来保存你的计时器,计数定时器和计数器计数使用的时间
@property (nonatomic, assign) NSInteger timerCount;
@property (nonatomic, strong) NSTimer *myCountTimer;
@property (nonatomic, strong) NSTimer *myTimer;
第2步:启动计时器,定时器计数和执行定时器处理程序:
- (void)startTimer {
self.myCountTimer = [NSTimer scheduledTimerWithTimeInterval:1.0f target:self selector:@selector(countTimer:) userInfo:nil repeats:NO];
self.myTimer = [NSTimer scheduledTimerWithTimeInterval:60.0f target:self selector:@selector(fireTimer:) userInfo:nil repeats:NO];
}
- (void)countTimer:(NSTimer *)inTimer {
self.timerCount += 1;
}
- (void)fireTimer:(NSTimer *)inTimer {
// Timer is fired.
}
第3步:实现播放/暂停定时器:
- (void)pauseTimer {
[self.myTimer invalidate];
self.myTimer = nil;
}
- (void)resumeTimer {
if(self.myTimer) {
[self.myTimer invalidate];
self.myTimer = nil;
}
NSInteger remainingTime = 60 - self.timerCount;
self.myTimer = [NSTimer scheduledTimerWithTimeInterval:remainingTime target:self selector:@selector(fireTimer:) userInfo:nil repeats:YES];
}
我相信你已经重新声明它。 'MyTimerName = [NSTimer ...]'我认为你正在制作一个计时器应用程序? – Arc676
我想在我的应用程序中录制一分钟内完美的语音。只剩下这个计时器问题。 –
如果您有代码段,请将其发布。它真的很感激。 –