instrumets
已经取消了debug options
可以在xcode的debug
- view debugging
找到
“核心动画工具和模板已在工具中弃用。之前在”调试选项“下的功能已移至Xcode,位于”Debug> View Debugging
“下。
开启后会把那些需要离屏渲染的图层高亮成黄色,这就意味着黄色图层可能存在性能问题。
正常:是这样的
有问题的图层:
可以看见我设置了圆角的imageView有问题.
### 项目开发中怎么去处理?
抛出一个问题: 需求就是有很多圆角那我们项目中应该怎么去处理圆角呢?
相信看完两篇文章,多少都会能收获一点!
有些人说:
iOS 9.0 之后UIButton设置圆角会触发离屏渲染,而UIImageView里png图片设置圆角不会触发离屏渲染了,如果设置其他阴影效果之类的还是会触发离屏渲染的(这句话不知道谁说的.自己有没有去尝试呢???)
结论: 经过测试
大家可以看到,
UIButton 的 masksToBounds = YES下发生离屏渲染与 背景图存不存在有关系, 如果没有给按钮设置 btn.image = [UIImage imageName:@"xxxxx"];
是不会产生离屏渲染的 .
关于 UIImageView,现在测试发现(现版本: iOS10),在性能的范围之内,给UIImageView设置圆角是不会触发离屏渲染的,但是同时给UIImageView设置背景色则肯定会触发.触发离屏渲染跟 png.jpg格式并无关联(可能采取的压缩格式不同,这里不做探讨,这里我给出结果是没有关系)