我正在编写一些应用程序。我有一些带有自定义 View 的类(class)。在 View 中,有一个计时器正在调用“setNeedsDisplayInRect”方法。我需要该计时器对于动画的目的来说非常具有攻击性(没有非常复杂的动画)。我已将计时器的值设置为:0.0001。这个值是不是太大了?该应用程序可以正常工作。
最佳答案
不要为此使用NSTimer
。使用CADisplayLink
。它将以设备的最佳速率运行。
像这样设置:
self.displayLink = [self.view.window.screen displayLinkWithTarget:self selector:@selector(setNeedsDisplayForMyView)];
[self.displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
并定义一个方法setNeedsDisplayForMyView
:
- (void)setNeedsDisplayForMyView
{
[self.view setNeedsDisplayInRect:self.dirtyRect];
}
关于iphone - NSTimer 对象的最佳值是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8469834/