iOS圆角避免离屏渲染

写在前面

代码已经整理到nxlib的 nx_circleView, nx_circleImage 中, 在列表中使用圆角时建议使用这个方式.

参考阅读

阅读原文 iOS可自选切割角的圆角切割工具 (避免离屏渲染) - SKArchCutterarrow-up-right

简述

SKArchCutterarrow-up-right,是一个可自选切割角的圆角切割工具,同时支持UIView、UIImageView、UIButton和UILabel的单角切圆/选角拱形切圆/全角切圆,并且避免了UIImageView使用系统圆角所导致的离屏渲染的问题,以及确保layer对象的masksToBounds属性始终为NO,从而使得项目中大量使用圆角时的性能得到很大程度的优化, 最重要的是使用简单、方便。如果觉得还不错,star支持下吧~

为什么要避免离屏渲染?

当然,能够触发离屏渲染的因素远不止上述这些,这里仅仅是举例。

SKArchCutter的作用是什么?

方便、快捷的帮助你从任意边角进行圆角的切割(如:半圆矩形、只有一个角是圆角的矩形、整体圆角切割等)

同时支持UIView、UIImageView、UIButton和UILabel

避免了系统圆角导致的离屏渲染问题,确保layer对象的masksToBounds属性始终为NO,提升了大量使用圆角时的性能流畅性,减小了CPU和GPU的消耗

避免了因工作线程的延迟,而导致图片闪烁的现象,这里学习了HJCornerRadiusarrow-up-right的思路

效果图

测试性能

ps:录制的帧数已经跟不上屏幕滑动的速度了,足以说明滑动的流畅性有多高了

如何开始 1.从GitHub上Clone–>SKArchCutter,然后查看Demo

2.直接将目录下的SKArchCutter拷贝到工程中,或在podfile文件夹中添加 pod 'SKArchCutter'

3.觉得不错的话,点个star吧~

使用方法 头文件导入

进行圆角切割

UIView/UIButton/UILabel

UIImageView

喜欢的话点个star哦~

Last updated