Не используйте 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];
}