你的位置:首页 > 操作系统

[操作系统]UIView设置圆角


UIView设置圆角

1、比较简单的情况,UIView四个角都是圆角:

  UIView *aView = [[UIView alloc] init];    aView.frame = CGRectMake(0, 0, 300, 200);  aView.backgroundColor = [UIColor redColor];    //设置圆角边框    aView.layer.cornerRadius = 8;    aView.layer.masksToBounds = YES;    //设置边框及边框颜色    aView.layer.borderWidth = 8;    aView.layer.borderColor =[ [UIColor grayColor] CGColor];    [self.view addSubview:aView];

 

2、设置四个角中的某个或者某几个为圆角

  UIView *aView = [[UIView alloc] init];    aView.frame = CGRectMake(0, 0, 300, 200);  aView.backgroundColor = [UIColor redColor];    [self.view addSubview:aView];    //设置所需的圆角位置以及大小  UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:aView.bounds byRoundingCorners:UIRectCornerBottomLeft | UIRectCornerBottomRight cornerRadii:CGSizeMake(10, 10)];  CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];  maskLayer.frame = aView.bounds;  maskLayer.path = maskPath.CGPath;  aView.layer.mask = maskLayer;

 

其中,UIRectCornerBottomLeft,UIRectCornerBottomRight是可以选择的角。

 

typedef NS_OPTIONS(NSUInteger, UIRectCorner) {  UIRectCornerTopLeft   = 1 << 0,  UIRectCornerTopRight  = 1 << 1,  UIRectCornerBottomLeft = 1 << 2,  UIRectCornerBottomRight = 1 << 3,  UIRectCornerAllCorners = ~0UL};

上面的枚举是可以供选择的角,分别是:“左上角”、“右上角”、“左下角”、“右下角”。