Я новичок в разработке для iOS, и я пытался сделать базовое приложение для игры в крестики-нолики.Я не могу найти способ сравнить значение трех кнопок (кнопок в строке или столбце, и т. Д. ).Мне удалось создать 9 кнопок, и я заменяю изображение каждой кнопки по щелчку пользователя (либо X, либо O в зависимости от очереди).Также я использую тег идентификатора от 1 до 9 на кнопках.
Здесь код, с которым я сталкиваюсь, ошибка.
func check(){
let b1 = self.view.viewWithTag(1) as? UIButton
let b2 = self.view.viewWithTag(2) as? UIButton
let b3 = self.view.viewWithTag(3) as? UIButton
let b4 = self.view.viewWithTag(4) as? UIButton
let b5 = self.view.viewWithTag(5) as? UIButton
let b6 = self.view.viewWithTag(6) as? UIButton
let b7 = self.view.viewWithTag(7) as? UIButton
let b8 = self.view.viewWithTag(8) as? UIButton
let b9 = self.view.viewWithTag(9) as? UIButton
if(b1.currentImage.isEqual(UIImage(named: "x")) && b2.currentImage.isEqual(UIImage(named: "x")) && b3.currentImage.isEqual(UIImage(named: "x")))
{
print("X wins")
}
}
Я получаю сообщение об ошибке в выражении if
, говорящее:
Значение необязательного типа 'UIButton?'не развернутый;ты хотел использовать '!'или '?'?
Теперь проблема в том, что встроенная справка не исправляет ошибку.Также я не понимаю, почему я получаю эту ошибку.Может кто-нибудь помочь мне объяснить, почему я сталкиваюсь с этой ошибкой?И как это исправить?