更改UIBezierPath颜色

时间:2018-02-21 22:57:57

标签: swift

我有一个UIView,其中我使用bezierPath来形成它的形状。我想创建一个重复的视图,但颜色不同。创建相同的形状,但颜色不会随以下代码而变化。知道为什么吗?

let whiteWave = coloredWave
let drawingLayer = CAShapeLayer()
drawingLayer.path = coloredWave.aPath.cgPath
drawingLayer.strokeColor = UIColor.white.cgColor
drawingLayer.lineWidth = audioClip.widthOfClip
drawingLayer.fillColor = UIColor.white.cgColor
whiteWave.layer.addSublayer(drawingLayer)

编辑:好的,经过一番挖掘,我发现drawRect在设置whiteWave后完成。我尝试使用CATransaction块并在完成块中设置新wave。但这也不起作用。

我如何等待UIView中的drawRect完成?

1 个答案:

答案 0 :(得分:-1)

据我所知,这是因为你对两种形状使用相同的名称。尝试让whiteWave2成为第二个形状。