向子视图控制器添加依赖项

时间:2019-03-20 23:51:13

标签: ios swift interface-builder

我想在模式视图内的导航控制器中展示自定义视图控制器。为此,我在界面生成器中创建了一个视图,添加了一个容器视图,并将所包含的视图嵌入到导航控制器中。包含的视图是我的自定义视图控制器DetailViewController。

enter image description here

我必须在运行时将依赖项添加到DetailViewController对象。这是我将展示DetailViewController的方法:

override func tableView(_: UITableView, didSelectRowAt: IndexPath) {
    guard let record = records[didSelectRowAt.row] else { return }
    let storyBoard = UIStoryboard(name: "Main", bundle: nil)
    let containerView = storyBoard.instantiateViewController(withIdentifier: "DetailContainer")
    containerView.modalPresentationStyle = .overFullScreen
    self.present(detailContainer, animated: true, completion: nil)
}

如何将记录添加到DetailViewController?我试图访问容器视图的子级,但是数组为空。 This Apple document

  

必须与父对象同时实例化子对象,以便可以创建适当的父子关系。

我不确定如何实现。

1 个答案:

答案 0 :(得分:0)

containerView.children为空,因为未加载viewcontroller的视图。 您可以通过调用containerView.view来强制加载视图,此后containerView.children将存在。