如何在 PageViewController 和 ViewController 之间传递数据?

Posted

技术标签:

【中文标题】如何在 PageViewController 和 ViewController 之间传递数据?【英文标题】:How to pass data between PageViewController and ViewController? 【发布时间】:2014-10-16 22:52:23 【问题描述】:

在我的应用程序中,我使用的是具有两个不同视图控制器的 PageViewController。我实现它工作正常。现在我正在尝试在单击栏按钮时将一些信息从 MainView 控制器传递到 ChildView 控制器。我尝试使用协议,但它似乎不起作用。

MainViewController

import ViewControllerA 
import ViewControllerB   
@protocol MainControllerDelegate<NSObject>
-(void) passInformation :(NSString*)someInfo;
end

MainController<PageViewControllerDelegate>

ViewControllerA

我希望看到的是访问子视图控制器中的主控制器委托,并在主视图控制器导航栏按钮中执行某些操作时传递信息。

ViewControllerA<MainControllerDelegate> // Can't find the delegate saying undefined

我确信会有一种方法可以在 UIPageViewController 和它的子视图控制器之间传递信息。我尝试了很多,但找不到答案。

【问题讨论】:

【参考方案1】:

您是否将 MainViewController.h 文件导入到您的 ViewControllerA 文件中?

【讨论】:

【参考方案2】:

您没有提供足够的信息。发布两个类的整个标题,指出哪个是父级,哪个是子级。在创建子视图控制器的父视图控制器中发布代码。诀窍是当您实例化填充页面视图控制器中的一个页面的视图控制器时,您需要在子视图控制器中设置一个指向子视图控制器的属性。

我最近一直在使用 Mac OS,所以我对页面视图控制器有点生疏。如果我没记错的话,你将他们管理的视图控制器的数组传递给他们。

您将实例化每个子视图控制器,双向设置指针,然后将它们安装到页面视图控制器中。

【讨论】:

你能帮我***.com/questions/14301514/…吗?

以上是关于如何在 PageViewController 和 ViewController 之间传递数据?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 SwiftUI 中制作动态 PageViewController?

Swift:如何将数据传递给嵌入在 ContainerView 中的 PageViewController?

如何在 SwiftUI 中的 PageViewController 中传递一些视图?

如何根据 PageViewController 更改按钮的操作?

(Swift) 如何使用触摸按钮更改 pageviewcontroller 中的视图

滚动表格时如何禁用 PageViewController?