更新按钮图像迅速

问题描述:

我有一些代码,但一个更新按钮的图片,当我试图运行的代码我一直得到一个错误:更新按钮图像迅速

“致命错误:数组索引超出范围”

这个代码我试图运行低于:

func updateButtonImages() { 
    let buttons = total.map { buttonList[$0] } 
    **buttons[0].setImage(UIImage(named: "p2"), forState: .Normal)** 



    var time = dispatch_time(DISPATCH_TIME_NOW, 0) 
    for (priorButton, currentButton) in zip(buttons[0..<buttons.count - 1], buttons[1..<buttons.count]) { 
     time = dispatch_time(time, Int64(speed * Double(NSEC_PER_SEC))) 
     dispatch_after(time, dispatch_get_main_queue()) { 
      priorButton.setImage(UIImage(named: "p2"), forState: .Normal) 
      currentButton.setImage(UIImage(named: "p1"), forState: .Normal) 
     } 
    } 

    time = dispatch_time(time, Int64(speed * Double(NSEC_PER_SEC))) 
    dispatch_after(time, dispatch_get_main_queue()) { 
     buttons.last?.setImage(UIImage(named: "p1"), forState: .Normal) 
     //replayButton.enabled = true 
     self.buttonList.forEach { $0.enabled = true } 
    } 
} 

有什么我可以做,以解决这个问题?

在此先感谢。

此错误:致命错误:数组索引超出范围包含并回答。

您尝试使用不在此数组范围内的项目。

例子:

var items = [1, 2] 

items[2] // error only items are available at indexes 0 and 1 

所以在你的代码检查buttonList阵列。

+0

谢谢你的回答,我已经更新了上面的代码并用双星号包围了行,这会导致xcode中的错误,但我完全理解你提供的答案,我仍然不确定它是否与** buttonList **数组或**按钮** – Prash

+0

按钮为空或零 –