我正在尝试使用虚线模式在CAShapeLayer
中描述路径。我使用lineDashPattern
属性创建了许多破折号模式。但是这个属性并没有给出任何选择。我想我的破折号是圆点状的图像下面:如何为CAShapeLayer绘制圆点笔划图案?
我知道这是可以实现的,因为我已经在许多应用程序看到了这一点。但我无法找到任何方式在CAShapeLayer
库中执行此操作。所以我想知道如何获得这些圆点短跑模式?
我正在尝试使用虚线模式在CAShapeLayer
中描述路径。我使用lineDashPattern
属性创建了许多破折号模式。但是这个属性并没有给出任何选择。我想我的破折号是圆点状的图像下面:如何为CAShapeLayer绘制圆点笔划图案?
我知道这是可以实现的,因为我已经在许多应用程序看到了这一点。但我无法找到任何方式在CAShapeLayer
库中执行此操作。所以我想知道如何获得这些圆点短跑模式?
所有你需要做的是设置kCALineCapRound您CAShapeLayer的的linecap属性,然后你lineDashPattern设置为[0.0,X],其中,例如x是2 *的如果你希望点之间的距离和你的点直径一样长,你的CAShapelayer的线宽。
在lineDashPattern 0.0为先涂上段有导致kCALineCapRound画一个半圆和后面的画段前和漆的任何部分大于零会导致点成为丸。
尝试下面的代码片段
shapeLayer.lineDashPattern = [NSArray arrayWithObjects:[NSNumber numberWithInt:1],[NSNumber numberWithInt:2 * stroke.width()], nil];
shapeLayer.lineCap = kCALineCapRound;
尝试//迅速
layer.strokeColor = UIColor.whiteColor().CGColor
layer.fillColor = UIColor.clearColor().CGColor
layer.lineWidth = 4
layer.lineDashPattern = [0.01, layer.lineWidth * 2]
layer.lineCap = kCALineCapRound
即使我设置'X = 2 * linewitdh'它给我吃药 – 2015-07-03 11:55:52
X无关与形式它定义了点之间的边距(未上漆的片段)。例子中的零点就是点的形状,如果绘制的线段大于零,它会给你一个药丸。 – 2015-07-04 19:25:51