ios 切圆角的方法

1.直接用视图中layer中的两个属性来设置圆角,这种方法比较简单,但是及其影响性能不推荐:

@property (strong, nonatomic) IBOutlet UIImageView *imageView;

self.imageView.layer.cornerRadius = 5;

  self.imageView.layer.masksToBounds = YES; 

2.通过layer和bezierPath 设置圆角

  • (void)setLayerAndBezierPathCutCircularWithView:(UIView *) view

{

// 创建BezierPath 并设置角 和 半径 

UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:view.bounds byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight|UIRectCornerBottomLeft|UIRectCornerBottomRight cornerRadii:CGSizeMake(5, 5)];

CAShapeLayer *layer = [[CAShapeLayer alloc] init];

layer.frame = view.bounds;

layer.path = path.CGPath;

view.layer.mask = layer;

}

3.通过Graphics 和 BezierPath 设置圆角

  • (void)setGraphicsCutCirculayWithView:(UIImageView *) view

{

UIGraphicsBeginImageContextWithOptions(view.bounds.size, NO, 1.0);

[[UIBezierPath bezierPathWithRoundedRect:view.bounds cornerRadius:5] addClip];

[view drawRect:view.bounds];

view.image = UIGraphicsGetImageFromCurrentImageContext();

// 结束

UIGraphicsEndImageContext();

}

你可能感兴趣的:(ios 切圆角的方法)