iphone - 删除索引 0 处的 CALayer

标签 iphone uiview calayer

我添加了一个渐变层:

[theView.layer insertSublayer:gradient atIndex:0];

稍后在另一种方法中我想删除该层。我想我应该获取子层数组,然后获取索引 0 处的子层并对其调用removeFromSuperlayer。这是正确的方法吗?如果不正确,你可以这样做吗?

干杯。

最佳答案

您可以按照您描述的方式进行操作,但不太可靠。问题是,如果您在添加和删除之间对子图层执行任何操作,子图层的索引可能会更改,并且最终会删除您不想要的内容。

最好的办法是保留对该图层的引用,稍后当您想要删除它时,只需调用[theLayer removeFromSuperlayer]

希望对你有帮助

关于iphone - 删除索引 0 处的 CALayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4250650/

相关文章:

ios - 非阻塞 UIView 动画缩放

iphone - 使用iPhone SDK,我可以以编程方式获取用户iPhone/iPod touch上的应用程序/游戏的列表吗?

uiview - CGRect 的 setFrame 在 iOS 8.0 上丢失了原始值

ios - convertPoint :fromView: works well on the simulator, 不在设备上

iphone - iOS上如果一个view有好几层,drawRect是不是只能选择一个层显示?

iOS 按钮动画,如邮件应用程序

ios - 有没有办法比较CGPoints?

iphone - 如何在某种数据库中拥有 mp3 文件并在 ios 中访问?

iphone - 与 Objective-C 中的头文件和实现文件混淆

ios - 如何通过 convertPoint toview 从父 View 中找出 subview 的确切位置