之前在使用UITableViewController进行滚动时,cocos2d的动画会暂停,直至滚动完毕才会继续动画。
后来发现可以这样解决,想要了解更多,请查阅NSRunLoop相关知识。
// .h
NSTimer* m_timer;
// .m
- (void)updateCCDirector { [[CCDirector sharedDirector] drawScene]; if (!self.tableView.dragging) { [m_timer invalidate]; m_timer = nil; } } - (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView { if (m_timer == nil) { m_timer = [NSTimer scheduledTimerWithTimeInterval:1.0/60 target:self selector:@selector(updateCCDirector) userInfo:nil repeats:YES]; [[NSRunLoop currentRunLoop] addTimer:m_timer forMode:NSRunLoopCommonModes]; } }