Objective-C图片切圆角优化

iOS开发中,为图片切圆角常采用masksToBounds和clipsToBounds,但在iOS9.0前会导致离屏渲染,性能消耗大。解决办法是在UIImageView分类中使用Core Graphics绘制圆角,或者结合SDWebImage进行优化,减少卡顿问题。
摘要由CSDN通过智能技术生成

iOS开发中我们会经常对图片进行切圆角操作,常见的做法是这样的:

        myImgView.layer.cornerRadius = 25;
        myImgView.layer.masksToBounds = YES;

其中masksToBounds(CALayer)表示视图的图层上的子图层,如果超出父图层的部分就截取掉;还有clipsToBounds(UIView),是指视图上的子视图,如果超出父视图的部分就截取掉。
在iOS9.0之前这样设置会触发离屏渲染,比较消耗性能。比如当一个页面上有十几头像这样设置了圆角,尤其是tableView中,大量操作会明显的感到页面的轻微卡顿。
GitHub上有不少开源的第三方,其中基本都是用了Core Graphics绘制圆角。其实只要在你的UIImageView的分类中加一个方法即可:

+ (UIImage *)imageWithRoundCorner:(UIImage *)sourceImage cornerRadius:(CGF
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值