我要拔出我剩下的小头发!
我有一个带有匹配的.xib文件的UIViewController。在.xib中,我有一个在接口构建器中制作的IBOutlet,名为“ titleText”
在我的代码的一部分中,我有以下几行:
let fooVC = FooViewController(nibName: "FooViewController", bundle: Bundle.main)
fooVC.titleText = "TEST"
viewController“似乎”可以很好地加载,我得到了正确类型的对象,但是IBOutlets没有初始化。
是否需要执行其他步骤来初始化我可能拥有的任何IBOutlet?
这一定很简单,对吧?!
答案 0 :(得分:1)
在视图加载之前,插座为零。因此,只需创建另一个变量并像下面一样存储标题字符串
class FooViewController: UIViewController {
@IBOutlet titleText:UILable!
var titleString:String?
override func viewDidLoad() {
super.viewDidLoad()
titleText.text = titleString
}
}
使用:
let fooVC = FooViewController()
fooVC.titleString = "TEST"