Jac*_*nkr 1 animation uiview ios
UIView animatWithDuration有一个可选的参数completion,但我需要一个update
整个想法是我需要一个在每个动画帧上运行的块.我想我可以用一个恶搞这个NSInterval,但这看起来很糟糕.
思考?
请改用CADisplayLink.就像NSTimer一样工作,但每帧都会触发一次,并且与动画完全同步.
这是你如何设置一个:
self.displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(step)];
[link addToRunLoop:[NSRunLoop mainRunLoop] forMode:NSRunLoopCommonModes];
Run Code Online (Sandbox Code Playgroud)
你的动画代码
- (void)step
{
//do something related to your animation
}
Run Code Online (Sandbox Code Playgroud)
然后当动画结束
[self.displayLink invalidate];
self.displayLink = nil;
Run Code Online (Sandbox Code Playgroud)