在具有容器视图的VC中,在ViewDidload之前调用prepareForSegue

时间:2017-09-14 17:38:31

标签: ios swift segue

我在导航控制器中有一个视图控制器和一个UISearchBar。我添加了一个Container View,然后包含2个ViewControllers。

我需要将变量传递给容器视图和容器视图的视图控制器。但是我无法做到这一点,因为prepareForSegue发生的时间早于我的主要VC的viewDidLoad()

我需要将这些变量传递给我的Container View,但是在初始化这些变量之前调用prepareForSegue

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    print("prepare for segue FirstViewController")

    if segue.identifier == "mapViewContainer" {
       let vc = segue.destination as! MasterMapViewController
       vc.segmentControl = self.container
       vc.resultsViewController = self.resultsViewController
       vc.searchController = self.searchController   
    }
}

Picture

1 个答案:

答案 0 :(得分:1)

尝试初始化这些变量不在viewDidLoad中,而是在prepareForSegue方法中。