Layer性能

作者: 我花开后百花殺 | 来源:发表于2016-05-06 22:58 被阅读53次

CALayer内部并没有属性,当调用属性方法时,它内部是通过运行时resolveInstanceMethod为对象临时添加一个方法,并把对应属性值保存到内部的一个Dictionary里,同时还会通知delegate、创建动画等等,非常消耗资源。UIView的关于显示相关的属性等实际上都是CA Layer属性的映射,所以对UIView的这些属性进行调整时,消耗的资源要远大于一般属性。应尽量减少不必要的属性修改。

当视图层次调整时,UIView、CALayer 之间会出现很多方法调用与通知,所以在优化性能时,应该尽量避免调整视图层次、添加和移除视图。

相关文章

网友评论

    本文标题:Layer性能

    本文链接:https://www.haomeiwen.com/subject/tlbjrttx.html