我有一个NSTimer,间隔为0.1,用于更新进度视图,一旦达到10秒,我就会停止。 进度视图表示从0秒到10秒的时间。我从0.1-10开始的原因是因为进度视图更顺畅。
所以这个工作正常但随机阻止我的UI大约1-2秒。 这是代码:
-(void)countFunction{
secs=secs+0.1;
if (secs>10.0 || continueTimer==NO) {
[clockTimer invalidate];
clockTimer=nil;
clockLabel.alpha=0;
[self stopRecorder];
}
progressView.progress=secs/10.0;
NSLog(@"progress %f",secs/10.0);
clockLabel.text=[NSString stringWithFormat:@"%f",secs];
}
-(void)countdown{
secs=0.0;
clockTimer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(countFunction) userInfo:nil repeats:YES];
}
我尝试使用GCD,但UI没有更新。有任何建议如何解决这个问题?