use*_*007 1 core-animation objective-c calayer ios
您好,我正在CAShapeLayer和CGPath.我正在绘制拼图并添加到scrollview.I put reload按钮来检查性能.当我重新加载时,我将删除所有以前的图层scrollview.一段时间后它崩溃了.
Zombie向我展示了删除图层的原因,这就是问题所在.代码中有什么问题吗?这里是 :
NSArray* layerArray = [[self.scrollView.layer sublayers]copy];
for (int i = 0; i < layerArray.count; i++) {
A3JigsawView* aJigsawView = [layerArray objectAtIndex:i];
[aJigsawView removeFromSuperlayer];
}
self.scrollView.layer.sublayers = nil;
prevWidth = 0;
prevHeight = 0;
Run Code Online (Sandbox Code Playgroud)
请帮帮我.谢谢你.
是的self.scrollView.layer.sublayers = nil.不加选择地删除所有子图层会导致iOS 7中出现严重崩溃,这可能会在程序执行后发生.我已经使用rootLayer.sublayers = nil和两个彻底测试了这个[rootLayer.sublayers makeObjectsPerformSelector:@selector(removeFromSuperlayer)].必须有一个系统创建的图层搞砸了.
您必须保留自己的图层数组并自行删除它们:
[myArrayOfLayersIAddedMyself makeObjectsPerformSelector:@selector(removeFromSuperlayer)];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1446 次 |
| 最近记录: |