我正在使用Objective-C进行iOS应用程序,因为我正在进行一些录音并将音频转换为语音,将语音转换为音频。在tableview中显示的语音/音频数据。就像Siri在iPhone中做的一样。
我的问题是,我正在显示查看顶级tableview,并在UItableview下显示animationview,它的UIview对象。 Animationview工作正常,但如果我。向上/向下滚动查看tableview,动画视图获取distrub /停止动画,在我发布tableview后,它再次正常工作。
我试图再次在主线程上运行它,但没有用,仍然发生同样的问题。
我的代码如下:
-(void)startAnimation{
animationTimer = [NSTimer scheduledTimerWithTimeInterval:0.009 target:self selector:@selector(refreshAnimationView:) userInfo:nil repeats:YES];
}
- (void)refreshAnimationView:(NSTimer*)theTimer {
[[NSOperationQueue mainQueue] addOperationWithBlock:^{ // Your code to run on the main queue/thread
//animation code here
}
}];
}
任何人都可以建议我如何处理这个问题。
答案 0 :(得分:2)
尝试在创建后为NSRunLoopCommonModes
添加计时器。
[NSRunLoop.mainRunLoop addTimer:animationTimer forMode:NSRunLoopCommonModes];