我想在我的应用程序中运行程序动画而不阻塞运行循环。有什么好方法可以做到这一点?
有没有办法做类似于模板做的CADisplayLink
循环?OpenGL
我可以只设置相同的运行循环但进行视图转换而不是更新 GL 视图吗?
编辑:我已经启动并运行了一个显示链接,但我不确定如何使它工作,以便我可以每 n 秒执行一个块?有什么使用技巧CADisplayLink
吗?
编辑2: 本质上,我试图使视图脉动或变换。我不太确定该怎么做。CADisplayLink 每秒触发多次,所以我不确定如何计算每帧的变化。
CADisplayLink
在我看来,我已经设置了一个,如下所示:
@interface SomeView
@property (nonatomic, strong) CADisplayLink *displayLink;
@end
@implementation SomeView
//...
- (id)init
{
self = [super init]
if (self) {
_displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(update)];
[_displayLink addToRunLoop:[NSRunLoop mainRunLoop] forMode: runMode:NSDefaultRunLoopMode];
}
return self;
}
- (void)update
{
// What can I put here to smoothly resize a view with transforms?
}
@end
有人可以解释如何做到这一点吗?