В приведенном ниже коде
@IBoutlet weak var theNameOfThelable: UILabel!
Вышеприведенный оператор является неявно развернутым необязательным . Это означает, что его значение будет назначено позже, а не только в init
.
Кроме того, @IBOutlet
будет назначаться автоматически после подключения розеток к раскадровке после init
и до viewDidLoad()
.
С другой стороны,
@IBoutlet weak var theNameOfThelable = UILabel()
Здесь вы назначаете новый UILabel()
экземпляр для outlet
. Это не будет связано с storyboard
.
. В обоих случаях UILabel!
и UILabel()
назначение различно. Вы все еще можете получить доступ к свойствам UILabel
. Только если UILabel!
не подключено перед его использованием, приложение вызовет исключение времени выполнения .