CAShapeLayer+UIBezierPath画圆角

不需要获取上下文方法画线:
不需要获取上下文
//设置圆角
    UIBezierPath *path;
    path = [UIBezierPath bezierPathWithRoundedRect:self.bounds byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight cornerRadii:CGSizeMake(self.frame.size.width, self.frame.size.height)];
    CAShapeLayer *maskLayer = [CAShapeLayer layer];
    maskLayer.frame = self.bounds;
    maskLayer.path = path.CGPath;
    self.layer.mask = maskLayer;

CAShapeLayer有着几点很重要:

1. 它依附于一个给定的path,必须给与path,而且,即使path不完整也会自动首尾相接

2. strokeStart以及strokeEnd代表着在这个path中所占用的百分比

3. CAShapeLayer动画仅仅限于沿着边缘的动画效果,它实现不了填充效果

画线、圆角
参考资料1
参考资料2
参考资料3
参考资料4
参考资料5

你可能感兴趣的:(CAShapeLayer+UIBezierPath画圆角)