同一父视图中的两个容器视图使用相同的数据

时间:2017-11-09 07:49:46

标签: ios swift uisegmentedcontrol uicontainerview pass-data

我试图以两种不同的方式表示相同的数据,一种在TableView中,一种在map中。故事板设计如下所示。

storyboard

我使用了两个容器视图;一个包含一个表视图,一个包含一个映射。让我们将具有分段控件的ViewController调用为SegView。在SegView控制器 - viewDidLoad方法中,我从服务器获取数据,并希望tableview和map都使用此数据。

但是,由于tableview,map和SegView有三个不同的ViewController实例,我想知道如何将数据从SegView传递到两个容器视图。你可以帮帮我吗?

1 个答案:

答案 0 :(得分:1)

如果你看一下你的故事板,你会发现有一些segues将SegView链接到你所包含的视图控制器;这些是embed segues,用于加载两个包含的视图。

您可以在故事板中单击这些segue,并像其他任何一个一样为它们提供标识符。

一旦为它们指定了标识符,就可以在prepareFor(segue:)的{​​{1}}函数中识别这些segue,并使用SegView属性获取对包含的ViewController的引用。