Поскольку dice1
и dice2
являются IBOutlets , я бы посчитал, что нет необходимости повторно инициализировать их.
Несмотря на то, что UIButton(named: ...)
кажетсябыть странным!
Итак, что вы должны сделать вместо - странной инициализации - для кнопок:
dice1 = UIButton(named: stenenArray[randomDiceIndex1])
dice2 = UIButton?(named: stenenArray[randomDiceIndex2])
- просто установить изображение для каждой из них, используяsetImage(_:for:)
метод:
dice1.setImage(UIImage(named: stenenArray[randomDiceIndex1]), for: .normal)
dice2.setImage(UIImage(named: stenenArray[randomDiceIndex2]), for: .normal)
Обновление:
Похоже, вам нужно реализовать updateDiceImages()
как:
func updateDiceImages() {
randomDiceIndex1 = Int(arc4random_uniform(6))
randomDiceIndex2 = Int(arc4random_uniform(6))
dice1 = UIButton(named: stenenArray[randomDiceIndex1])
dice2 = UIButton?(named: stenenArray[randomDiceIndex2])
}
, что означает, что вы должны сгенерировать случайные значения для обеих randomDiceIndex
переменных до установки изображений UIButtons, в противном случае первый бросок будет всегда нулем.