iOS使用shouldRasterize优化性能
2023-09-11 14:14:25 时间
/* When true, the layer is rendered as a bitmap in its local coordinate
* space ("rasterized"), then the bitmap is composited into the
* destination (with the minificationFilter and magnificationFilter
* properties of the layer applied if the bitmap needs scaling).
* Rasterization occurs after the layer's filters and shadow effects
* are applied, but before the opacity modulation. As an implementation
* detail the rendering engine may attempt to cache and reuse the
* bitmap from one frame to the next. (Whether it does or not will have
* no affect on the rendered output.)
*
* When false the layer is composited directly into the destination
* whenever possible (however, certain features of the compositing
* model may force rasterization, e.g. adding filters).
*
* Defaults to NO. Animatable. */
@property BOOL shouldRasterize;
/* The scale at which the layer will be rasterized (when the
* shouldRasterize property has been set to YES) relative to the
* coordinate space of the layer. Defaults to one. Animatable. */
@property CGFloat rasterizationScale;
如果在滚动tableView/collectionView时,每次都在cell中执行圆角设置,肯定会阻塞 UI,设置这个将会使滑动更加流畅。
当 shouldRasterize(光栅化)设成 true 时,layer被渲染成一个 bitmap,并缓存起来,等下次使用时不会再重新去渲染了。
实现圆角本身就是在做颜色混合(blending),如果每次页面出来时都blending,消耗太大,这时layer.shouldRasterize = YES,下次就只是简单的从渲染引擎的 cache 里读取那张 bitmap,节约系统资源。
相关文章
- iOS --- 总结Objective-C中经常使用的宏定义(持续更新中)
- iOS性能测试怎么做?这款工具轻松搞定
- 史上最全的 iOS测试工具集锦(自动化、性能)
- iOS下载使用系统字体
- iOS:导航栏的工具条和导航条
- 【AGC】如何集成华为AGC性能管理- iOS
- 如何通过云存储实现iOS端App的扫码安装
- 《iOS 9 开发指南》——第1章,第1.1节IOS开发入门
- 《iOS应用开发指南——使用HTML5、CSS3和JavaScript》——第1章 变小的巨大影响1.1 移动魔力和掌上电脑
- 《iOS 6核心开发手册(第4版)》——2.14节构建自定义的锁定控件
- Hello_IOS ios开发transform属性
- IOS 设备信息读取
- SwiftUI iOS 精品工具条组件之 06 自定义图片滚动工具条(教程含源码)
- iOS--性能优化--保持界面流畅
- iOS-Core-Animation-Advanced-Techniques/12-性能调优/性能调优.md
- iOS页面性能优化
- iOS 性能调优
- iOS中的imageIO与image解码
- iOS应用千万级架构:性能优化与卡顿监控
- 【AGC】如何集成华为AGC性能管理- iOS
- 【读书笔记】iOS-Xcode-模拟器操作的一些快捷键
- iOS开发 - 设置阴影之你不知道的秘密
- iOS之学习资源收集--很好的IOS技术学习网站
- iOS 地图 MKWebView(在中国是使用高德地图)