如果以编程方式加载类,则无法连接到outlet

时间:2018-04-17 19:10:31

标签: swift inheritance tableview iboutlet outlet

我有以下问题: 故事板中有类UniObjectsTableViewController的视图,AreasTableViewController继承自此类。 然后我按以下方式从代码加载类AreasTableViewController:

let areaViewController = AreasTableViewController()
self.navigationController?.pushViewController(areaViewController, animated: true)

UniObjectsTableViewController有一个SDStateTableView的出口。

@IBOutlet var stateTableView: SDStateTableView!

如果我尝试在AreasTableViewController的viewDidLoad()方法中打印插座,那就没有了。

print(stateTableView) => nil

有没有办法访问继承中的母类的出口 类?

1 个答案:

答案 0 :(得分:0)

Step 1: Give your child class instance a name on stoayboard 第1步:在stoayboard上为您的子类实例命名

Step 2: Open the base class under Manual in the Assistant editor, then you can command+drag 步骤2:在Assistant编辑器的Manual下打开基类,然后可以命令+ drag

第3步:

let storyboard = UIStoryboard(name: "Main", bundle: nil)
let areaViewController = storyboard.instantiateViewController(withIdentifier: "ChildViewController")
self.navigationController?.pushViewController(areaViewController, animated: true)