Ios 即使使用kCGLineCapRound,也无法在UIBezierPath圆弧中圆盖

Ios 即使使用kCGLineCapRound,也无法在UIBezierPath圆弧中圆盖,ios,objective-c,rounded-corners,uibezierpath,Ios,Objective C,Rounded Corners,Uibezierpath,我无法在使用UIBezierPath创建的弧上显示圆形封口。不管我是否设置了kCGLineCapRound,它仍然是完全平方的 本主题应与相同,但解决方案不起作用 下面是我在ViewWillAppeard中的示例代码(仅用于测试目的): 下面是它的外观: 我很无助,所以我会感激任何帮助。谢谢大家。使用CAShapeLayer的lineCap属性,而不是路径的lineCapStyle arc.lineCap = kCALineCapRound; 如果您正在调用路径的笔划方法(例如,如果您在dr

我无法在使用UIBezierPath创建的弧上显示圆形封口。不管我是否设置了kCGLineCapRound,它仍然是完全平方的

本主题应与相同,但解决方案不起作用

下面是我在ViewWillAppeard中的示例代码(仅用于测试目的):

下面是它的外观:


我很无助,所以我会感激任何帮助。谢谢大家。

使用
CAShapeLayer
lineCap
属性,而不是路径的
lineCapStyle

arc.lineCap = kCALineCapRound;
如果您正在调用路径的
笔划
方法(例如,如果您在
drawRect
中执行此操作,或者在
UIGraphicsContext
中手动绘制),则在
UIBezierPath
中设置cap或join样式等属性。但是当使用
CAShapeLayer
时,属性是在形状层上设置的,而不是在路径上设置的

arc.lineCap = kCALineCapRound;