iOS:关于给图片设置圆角

 平时开发中给图片设置圆角都是

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;

}

这个方法就是设置图片圆角,效率很高,不会出现卡顿的现象.

你可能感兴趣的:(iOS:关于给图片设置圆角)