iOS设置圆角(包括单独设置某个圆角)
2017-02-20 本文已影响0人
______空巷
设置四个角的圆角
以UIButton为例,设置圆角:
btn.layer.cornerRadius=6.0f;
btn.layer.masksToBounds=YES;//切掉超出的部分
其中,圆角cornerRadius CGFloat值表示圆半径
设置边的宽度和颜色:
btn.layer.borderWidth=2.0f;
btn.layer.borderColor=[UIColor redColor].CGColor;
设置UIButton某个角为圆角
利用UIBezierPath:
CAShapeLayer *shapeLayer = [CAShapeLayer layer];
shapeLayer.path = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(0, 0, 100, 100) byRoundingCorners:UIRectCornerBottomLeft | UIRectCornerBottomRight cornerRadii:CGSizeMake(6, 6)].CGPath;
btn.layer.mask = shapeLayer;
关于mask:
mask 属性本身就是个CALayer类型,
有和其他图层一样的绘制和布局属性。
mask图层定义了父图层的部分可见区域。
mask图层的 Color 属性是无关紧要的。mask图层实心的部分会被保留下来,其他的则会被抛弃。
CALayer 蒙版图层真正厉害的地方在于蒙版图层不局限于静态图。任何有图层构成的都可以作为mask属性,这意味着你的蒙版可以通过代码甚至是动画实时生成!
效果如下: