我正在做一个小项目,我想画一个贝塞尔曲线。我希望能够在绘图的不同部分更改lineWidth
。
以下是我所拥有的:
CAShapeLayer *pathLayer = [CAShapeLayer layer];
pathLayer.frame = self.animationLayer.bounds;
pathLayer.bounds = pathRect;
pathLayer.geometryFlipped = YES;
pathLayer.path = path.CGPath;
pathLayer.strokeColor = [[UIColor blackColor] CGColor];
pathLayer.fillColor = nil;
pathLayer.lineWidth = 1.0f;
pathLayer.lineJoin = kCALineJoinBevel;
我如何改变线条的宽度?一种解决方案可能是有多个
UIBezierPath
s和多个CAShapeLayer
s,但似乎应该有一个更简单、更优雅的解决方案(在指定lineWidth
行的级别指定UIBezierPath
行)。谢谢!
最佳答案
UIBezierPath
只有一个lineWidth
属性,因此不可能用一条路径绘制不同的线宽。你必须使用多个路径来达到这个效果。