从父视图向容器视图传递数据
Passing Data To Container View From Parent View
所以我看到了一些这样的例子,并尝试实施它们,但似乎无法让它发挥作用。我有两个 VC(在我的照片中都标记为 VC1),它们转到第二个视图控制器(照片中的 VC2)。 VC2 有一个容器视图。我将数据从 VC1 上的 属性 传递到 VC2 上的 属性,然后我需要将该数据从 V2 传递到容器视图上的 属性。基于使用一些 NSLogs 看来,在 VC1 传递的数据设置 VC2 上的 属性 之前,从 VC2 到我的容器视图的嵌入式 segue 的 segue 准备就绪,这意味着没有数据正在传递到我的容器视图。有办法解决这个问题吗?提前致谢。
这是我在 VC2 中的 prepareForSegue:
我的容器视图是 WineryPhotosCVC。我正在尝试将 WineryPhotosCVC 的酒厂 属性 设置为 VC2s 酒厂 属性。在调用我的容器视图的 prepareForSegue 之前,VC1 未设置 VC2s 酿酒厂 属性。
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqual: @"containerViewSegue"]) {
WineryPhotosCVC *wineryPhotosCVC = segue.destinationViewController;
wineryPhotosCVC.winery = _winery;
}
}
您可以在 VC2 中为容器视图保存一个引用,并在数据进入 VC2 时在 didSet 方法中传递数据。
您需要引用容器视图才能修改和访问它。所以添加它,然后在 VC2 的 viewWillAppear
(发生在 prepareForSegue 之后,将数据传递给 VC2)中,您只需设置容器的 属性直接或在容器上使用函数 VC 例如configure(someDataStructure: DataStructure)
所以我看到了一些这样的例子,并尝试实施它们,但似乎无法让它发挥作用。我有两个 VC(在我的照片中都标记为 VC1),它们转到第二个视图控制器(照片中的 VC2)。 VC2 有一个容器视图。我将数据从 VC1 上的 属性 传递到 VC2 上的 属性,然后我需要将该数据从 V2 传递到容器视图上的 属性。基于使用一些 NSLogs 看来,在 VC1 传递的数据设置 VC2 上的 属性 之前,从 VC2 到我的容器视图的嵌入式 segue 的 segue 准备就绪,这意味着没有数据正在传递到我的容器视图。有办法解决这个问题吗?提前致谢。
这是我在 VC2 中的 prepareForSegue:
我的容器视图是 WineryPhotosCVC。我正在尝试将 WineryPhotosCVC 的酒厂 属性 设置为 VC2s 酒厂 属性。在调用我的容器视图的 prepareForSegue 之前,VC1 未设置 VC2s 酿酒厂 属性。
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqual: @"containerViewSegue"]) {
WineryPhotosCVC *wineryPhotosCVC = segue.destinationViewController;
wineryPhotosCVC.winery = _winery;
}
}
您可以在 VC2 中为容器视图保存一个引用,并在数据进入 VC2 时在 didSet 方法中传递数据。
您需要引用容器视图才能修改和访问它。所以添加它,然后在 VC2 的 viewWillAppear
(发生在 prepareForSegue 之后,将数据传递给 VC2)中,您只需设置容器的 属性直接或在容器上使用函数 VC 例如configure(someDataStructure: DataStructure)