Я очень новичок в Xcode, и я работаю над этим кодом, где, в основном, появляется конкретная метка в зависимости от того, какая кнопка нажата.Чтобы упростить его (я не знаю, сколько кнопок и меток у меня будет в конечном итоге), я создал массивы для меток и кнопок (я перетянул кнопки и метки в код как Outlet Collection).В любом случае, вот код:
import UIKit
class ViewController: UIViewController {
//initialize everything
//labels first
@IBOutlet var labels: [UILabel]!
//buttons now
@IBOutlet var buttons: [UIButton]!
//pictures next
@IBOutlet var pic: UIImageView!
//function for all buttons
@IBAction func button_action(_ sender: UIButton) {
let propertyToCheck = sender.tag
for i in 0...buttons.count-1{
if buttons[i].tag != propertyToCheck{
labels[i].isHidden = true
}
else{
labels[i].text = "The right text"
if labels[i].isHidden == true {
labels[i].isHidden = false
} else {
labels[i].isHidden = true
}
}
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
var index = 0
//initialize view
//labels
for label in labels{
label.isHidden = true
}
//pics
pic.isHidden = true
//associate action for every button
for button in buttons {
button.tag = index// setting tag, to identify button tapped in action method
print("Hello", button.tag, buttons.count)
button.addTarget(self, action: #selector(button_action(_:)), for: UIControlEvents.touchUpInside)
index = index + 1
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Я получаю следующую ошибку: «libc ++ abi.dylib: завершается с неисключенным исключением типа NSException», и когда я смотрю на AppDelegate, я нахожуэто: «Тема 1: сигнал SIGABRT».Вот иерархия:
Опять же, я очень новичок, поэтому я предполагаю, что это ошибка при вызове чего-то, что не существует, или чего-то с подключениями,но я не могу понять, что это такое!Я уже искал в Интернете возможные решения, такие как очистка и перестройка проекта, но пока ничего не помогло.
Любое предложение будет по-настоящему оценено!