给UIImageView设置圆角(多种方法)

2017-02-03  本文已影响102人  达摩君

1.最简单的方法是使用下面这个方法

简单但耗性能

解析:好处是使用简单,操作方便。坏处是离屏渲染(off-screen-rendering)需要消耗性能。对于图片比较多的视图上,不建议使用这种方法来设置圆角。通常来说,计算机系统中CPU、GPU、显示器是协同工作的。CPU计算好显示内容提交到GPU,GPU渲染完成后将渲染结果放入帧缓冲区。                                        

简单来说,离屏渲染,导致本该GPU干的活,结果交给了CPU来干,而CPU又不擅长GPU干的活,于是拖慢了UI层的FPS(数据帧率),并且离屏需要创造新的缓冲区和上下文切换,因此消耗比较大的性能。

2.给UIImage添加生成圆角图片的扩展API

推荐使用

这么做就是on-screen-rendering了,通过模拟器->debug->Coloe Off-screen-rendering 看到没有离屏渲染了!(黄色的小圆角没有显示了,说明这个不是离屏渲染了)

3.通过mask遮罩实现

实现原理就是在原来图片上盖一张圆形的图片~

上一篇下一篇

猜你喜欢

热点阅读