iOS开发CADisplayLink 不销毁销毁 oc代码
CADisplayLink不会自动销毁,需要手动停止和释放。
在OC代码中,可以通过以下步骤停止和释放CADisplayLink:
- 在类的头文件中声明一个CADisplayLink属性:
@property (nonatomic, strong) CADisplayLink *displayLink;
- 在需要使用CADisplayLink的地方创建它,并指定一个方法作为其回调方法:
self.displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(displayLinkCallback:)];
- 实现回调方法:
- (void)displayLinkCallback:(CADisplayLink *)displayLink {
// 在这里执行需要重复执行的代码
}
- 启动CADisplayLink:
[self.displayLink addToRunLoop:[NSRunLoop mainRunLoop] forMode:NSRunLoopCommonModes];
- 在不需要CADisplayLink时,调用以下方法停止和释放它:
[self.displayLink invalidate];
self.displayLink = nil;
这样做可以确保CADisplayLink被正确停止和释放,避免内存泄漏。
原文地址: http://www.cveoy.top/t/topic/jbti 著作权归作者所有。请勿转载和采集!