liuzhiyi1992 / ZYCornerRadius

一句代码,圆角风雨无阻。A Category to make cornerRadius for UIImageView have no Offscreen-Rendered, be more efficiency.
http://zyden.vicp.cc/zycornerradius/
1.45k stars 230 forks source link

UITableViewCell、UICollectionViewCell中使用,卡顿更严重了 #37

Open yujieace opened 7 years ago

yujieace commented 7 years ago

RT,使用传统方式设置圆角,iPhone 7帧率约57fps,使用这个类库设置圆角,帧率直接降低至50fps以下,画面产生明显卡顿。

仔细查看代码,发现通过对image的观察者实现替换操作,但是,这个image的裁剪操作是在当前线程完成的,也就是说设置image是在主线程完成的操作,这个裁剪也是主线程完成的,我不知道作者是基于什么考虑在主线程做这个操作的,并且这个操作并没有缓存,也就是说,每次设置都要裁剪。这导致相当严重的性能问题。

bacy commented 7 years ago

我感觉也是变卡了。。。58变54,52

yujieace commented 7 years ago

实际上可以使用YYImage来进行圆角优化,这个库我试验过了,确实没什么用。每次设置图片都会裁剪,无论是否已经裁剪过,也没有良好的缓存机制来保障性能。建议使用YYImage来裁剪圆角。话说这么多的star哪来的,用过的应该都会感觉到卡顿严重的。

bacy commented 7 years ago

确实,裁剪圆角没问题,不过都在主线程操作,也没有考虑缓存,在TableView中确实不合适

rbyyy commented 6 years ago

修改一下,用着还行。