iOS - 指定视图的圆角个数

平常设置视图的圆角最普遍的就是设置四个角的,方法也就是一句代码解决:

view.layer.cornerRadius = 10;
iOS - 指定视图的圆角个数_第1张图片
四个圆角

但有时需求会是指定某个,或者特定哪几个角设置圆角,所以我们需要不一样的解决方法:

    UIView *view = [[UIView alloc] initWithFrame:CGRectMake(50, 150, 60, 60)];
    view.backgroundColor = [UIColor orangeColor];
    
    // UIRectCornerTopLeft      左上角
    // UIRectCornerTopRight     右上角
    // UIRectCornerBottomLeft   左下角
    // UIRectCornerBottomRight  右下角
    // UIRectCornerAllCorners   四个角
    // byRoundingCorners: 参数可以选择上面五种,需要制定某几个角为圆角,就要用 “|” 组合
    // cornerRadii: 代表圆角值大小
    UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:view.bounds byRoundingCorners:UIRectCornerTopLeft | UIRectCornerBottomRight cornerRadii:CGSizeMake(10, 10)];
    CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
    maskLayer.frame = view.bounds;
    maskLayer.path = maskPath.CGPath;
    view.layer.mask = maskLayer;
    [self.view addSubview:view];
iOS - 指定视图的圆角个数_第2张图片
左上和右下

此方法可以适用很多种视图,比如UIViewUILabelUIImageViewUIButton等。

你可能感兴趣的:(iOS - 指定视图的圆角个数)