ios - 在呈现的视图控制器被解除后调用主控制器的函数
问题描述
我有一个显示视图控制器的 MainViewcontroller。用户可能会采取一个动作,首先应该关闭视图控制器,然后调用 MainViewcontroller 中定义的函数。
约束是这个函数将创建一个新的 vc 来呈现。我试过主控制器的viewWillAppear和viewdidAppear。这不起作用,因为他们不止一次被调用。
我也可以使用通知机制,但我不确定 MainViewController 是否会在收到通知之前出现。
解决方案
你应该看看presentingViewController 文档。从呈现的视图控制器中,您可以使用self.presentingViewController
. 在下面试试我的代码
let mainViewController = self.presentingViewController as! MainViewController
self.dismiss(animated: true) {
mainViewController.doWhateverYouWant()
}
推荐阅读
- assembly - 为什么寻址错误?x86实模式引导扇区代码
- r - 如何从 R 中的合并功能中提取我想要的输出
- php - 当我尝试访问某个页面时,如何解决 403 访问禁止错误?
- ios - iOS CallKit 广告集成
- javascript - 将 JS Pulltorefresh 实现到 Angularjs 中的问题
- javascript - 发布复选框值/通过电子邮件发送
- excel - 在用户窗体中分组可移动项目
- google-apps-script - Google 表格 - 仅针对选定的表格发送电子邮件/slack
- c# - 如何将 Dapper Extensions 映射到多个数据库?
- java - 返回第一个可用日期的Java方法