两个 childViewController 之间的通信

Posted

技术标签:

【中文标题】两个 childViewController 之间的通信【英文标题】:Communication between two childViewControllers 【发布时间】:2012-06-14 08:55:15 【问题描述】:

在两个子视图控制器之间进行通信的最佳方式是什么?我知道使用委托在子视图控制器和父视图控制器之间进行通信,但我不知道如何在同一父视图控制器的子视图控制器之间进行通信。

【问题讨论】:

【参考方案1】:

好吧,您可以通过网点解决它,我认为最糟糕的解决方案是什么。或者您可以通知您的parentViewController 发生的所有事情并让他完成工作(例如通知所有需要特定信息的对象)。

例如,您可以这样做:

[childViewControllerInstance.parentViewController methodToCall];

在父视图控制器的类中,您可以做任何您想做的事情并对任何需要的对象执行操作。

编辑:

请尝试

[childViewControllerInstance.parentViewController performSelector:@selector(methodToCall:) 
                 withObject:yourObjectToPass];

【讨论】:

在 childviewcontroller 中我添加了这个方法 - -(IBAction)textButtonAction:(id)sender [self.parentViewController drawTextSction:sender];但这给了我错误不可见界面 uiviewcontroller 定义了 textButtonAction。 所以我的提示对你有用,你让你的parentViewController 在通知他后为你做这项工作? 是的,我也在做同样的事情。但是从子视图控制器调用该方法后出现上述错误

以上是关于两个 childViewController 之间的通信的主要内容,如果未能解决你的问题,请参考以下文章

呈现小viewController

UIPageViewController 在 childViewController 中具有动态内容

自动将事件从 ChildViewController 传递到 parentViewController

Phonegap/iOS - 如何推送 childviewcontroller?

如何在父视图控制器和子视图控制器之间传输数据

从 ChildViewController 呈现 ModalView