Ios UIBezierPath为每件作品放置一种颜色,只产生最后一种颜色

Ios UIBezierPath为每件作品放置一种颜色,只产生最后一种颜色,ios,swift,uibezierpath,Ios,Swift,Uibezierpath,我想为每一件画一种颜色。我补充说: let colors = [ [54.0/255.0, 78.0/255.0 ,44.0/255.0 ], [252.0/255.0, 178.0/255.0, 141.0/255.0 ], [242.0/255.0, 44.0/255.0 ,173.0/255.0 ], [239.0/255.0, 42.0/255.0 , 93.0/255.0 ], [169.0/255.0, 145.0/255.0, 135.0/2

我想为每一件画一种颜色。我补充说:

let colors = [
    [54.0/255.0, 78.0/255.0 ,44.0/255.0 ],
    [252.0/255.0, 178.0/255.0, 141.0/255.0 ],
    [242.0/255.0, 44.0/255.0 ,173.0/255.0 ],
    [239.0/255.0, 42.0/255.0 , 93.0/255.0 ],
    [169.0/255.0, 145.0/255.0, 135.0/255.0],
    [122.0/255.0, 228.0/255.0, 140.0/255.0],
    [110.0/255.0, 134.0/255.0, 36.0/255.0,],
    [32.0/255.0, 143.0/255.0, 55.0/255.0,],
    [178.0/255.0, 78.0/255.0, 6.0/255.0,],
    [39.0/255.0, 53.0/255.0, 27.0/255.0,],
    [46.0/255.0, 122.0/255.0, 151.0/255.0,],
]


let points = [[270, 290],[300, 320],[330, 350],[0, 20],[30, 50],[60, 80],[90, 110],[120, 140],[150, 170],[180, 200],[210, 230],[240, 260]]
func drawSmallCircles(){
    let index = 0
    for oneArray in points {
        let startAngleRadiant: CGFloat = degreesToRadians(Double(oneArray[0]))
        let endAngleRadiant: CGFloat = degreesToRadians(Double(oneArray[1]))
        let radius: CGFloat = 50.0
        let path = UIBezierPath(arcCenter: CGPoint(x: CGFloat(100), y: CGFloat(100)),
            radius: radius,
            startAngle: startAngleRadiant,
            endAngle: endAngleRadiant,
            clockwise: true)
        let color = UIColor(red: CGFloat(colors[index][0]), green: CGFloat(colors[index][1]), blue: CGFloat(colors[index][2]), alpha: CGFloat(1))
        color.setStroke()
        path.lineWidth = CGFloat(10)
        path.stroke()
    }
}

override func drawRect(rect: CGRect) {
    self.opaque = false;
    drawSmallCircles()
}
但最后的颜色总是显示出来

更新1 我忘了打电话了 索引++

但当我这样做时,我得到了一个错误:

/Main.storyboard:错误:IB可指定项:未能渲染WaitingCircleView实例:渲染视图的时间超过200毫秒。您的绘图代码可能会出现性能低下的问题。

您可能是有意的

var index = 0 
在循环内部:

index++

我发现颜色总是第一种颜色,而不是最后一种颜色。这是可设计的吗?假设它是,它是否需要是?如果不是,请关闭IBDesignable。如果它真的必须是可设计的,你是把你的IBDesignable放在它自己的模块中还是全部放在一个模块中?@Rob我想没有必要是IBDesignable的,我只是为了在屏幕上看到它。模块位置为空,我应该向该模块添加一些文本吗?老师不要谈论这个领域我发现了错误,这是因为颜色的数量与poitns不一样,哇,它现在正在工作,非常感谢。我真的很感谢你。如果你来到意大利/米兰,你总是有东道主。非常感谢。我发现我又犯了一个错误。我把问题放在这里,请找我好吗?最后一件事是真的,因为我必须在4小时后做这个作业,我需要睡觉。我发现,即使我提交股票函数,我仍然会有性能错误,可能是因为浮动?当我删除索引++时,错误性能会消失,但当我添加它时,错误性能会再次出现:(:)请帮帮我你好,请帮帮我