如何为每一行添加颜色?我希望所有的线条都有不同的颜色。例如,一面是蓝色,一面是红色,另一面是绿色。
override func viewDidLoad() {
super.viewDidLoad()
shape = CAShapeLayer()
view.layer.addSublayer(shape)
shape.opacity = 0.5
shape.lineWidth = 2
shape.lineJoin = kCALineJoinMiter
shape.strokeColor = UIColor(hue: 0.786, saturation: 0.79, brightness: 0.53, alpha: 1.0).CGColor
shape.fillColor = UIColor(hue: 0, saturation: 0, brightness: 0, alpha: 0).CGColor
path = UIBezierPath()
path.moveToPoint(CGPointMake(150, 300))
path.addLineToPoint(CGPointMake(230, 300))
path.addLineToPoint(CGPointMake(250, 350))
path.addLineToPoint(CGPointMake(230, 400))
path.addLineToPoint(CGPointMake(150, 400))
path.addLineToPoint(CGPointMake(150, 400))
path.addLineToPoint(CGPointMake(130, 350))
path.addLineToPoint(CGPointMake(150, 300))
path.closePath()
shape.path = path.CGPath
// Do any additional setup after loading the view, typically from a nib.
}
最佳答案
单一路径(单一形状图层)以单一颜色绘制。您可能应该为每种所需的颜色创建一个单独的形状层,并将要以相同颜色绘制的线段放入每个形状层的路径中(使用 moveToPoint/lineToPoint 创建不连续的线)。
将所有形状层作为子层添加到要包含绘图的 View 中。
关于ios - 如何为每条线段添加颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31221752/