2016-10-07 89 views
0

在我的代码中,我目前有一个嵌入故事板参考的容器视图。我引用的故事板包含一个视图控制器,其中包含两个容器视图。如何从另一个容器视图访问容器视图?

在我与容器视图视图控制器,我访问我的容器视图的视图控制器,像这样:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) 
{ 
    if segue.identifier == "showMetric" { 
     guard let metricChildViewController = segue.destinationViewController as? MetricChildViewController else { return } 
     var delegate: NewMetricDelegate! 

     let type = MetricsType.watts 
     let activityDelegate = NewActivityMetricDelegate(data: self.dataSet.dailySummary) 
     activityDelegate.dailySummaryPresentationDelegate = metricChildViewController 
     delegate = activityDelegate 

     metricChildViewController.metricDelegate = delegate 
     metricChildViewController.configure(type) 
     //I want to gain access to the table view controller 
    } 
} 

这里我创建MetricChildViewController,是嵌入在我的容器视图控制器的一个实例视图。就像我之前说过的,MetricChildViewController包含两个容器视图。我试图配置它的表视图控制器。

我想要做的是在我的视图控制器中的prepareForSegue方法中包含一个prepareForSegue,以访问我的容器视图的viewController的容器视图,如果有意义的话。

这似乎不是最好的方式去实现它,所以我想知道我应该如何去做这件事。

回答

0

MetricChildViewController需要对其他容器有强引用。更简单的方法是将MetricChildViewController作为子视图控制器添加,而不是通过storyboard嵌入它

相关问题