平时开发中给图片设置圆角都是
self.iconImage.layer.cornerRadius = 20;
self.iconImage.layer.masksToBounds = YES;
或者只在xib&storyboard中点击要设置圆角的图片
之后建议大家不要这样设置了,因为使用图层过量会有卡顿现象,特别是弄圆角或者阴影会很卡,如果要设置一个圆角的效果,我们一般用绘图来做:
/** 设置圆形图片(放到分类中使用) */
- (UIImage *)cutCircleImage {
UIGraphicsBeginImageContextWithOptions(self.size, NO, 0.0);
// 获取上下文
CGContextRef ctr = UIGraphicsGetCurrentContext();
// 设置圆形
CGRect rect = CGRectMake(0, 0, self.size.width, self.size.height);
CGContextAddEllipseInRect(ctr, rect);
// 裁剪
CGContextClip(ctr);
// 将图片画上去
[self drawInRect:rect];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
这个方法就是设置图片圆角,效率很高,不会出现卡顿的现象.
网友评论