视图控制器以模态方式呈现/关闭时的通知?
Posted
技术标签:
【中文标题】视图控制器以模态方式呈现/关闭时的通知?【英文标题】:Notification when view controller is presented modally/dismissed? 【发布时间】:2015-05-04 22:00:36 【问题描述】:如果某个视图控制器以模态方式呈现在另一个视图控制器之上(viewWillDisappear
除外,iPad 上的非全屏模态呈现显然不需要),是否有任何方法可以自动通知?
背景/用例:在 iPad 应用程序中,每当呈现模态表单时,我想调整模态表单后面的视图的外观。但是,如果模态的呈现不一定在需要适应的同一个视图控制器中完成,而是可能发生在某些子 VC 或父 VC 中。当然,我可以手动传达此事件(通过通知、委托或其他方式),但这是非常重复的,并且在将来添加更多模式表单时很容易忘记。
因此,我想知道是否有更优雅的方式来实现这一点。我已经在presentedViewController
上尝试过 KVO,但这似乎不起作用(而且我也不确定如果模态演示是由子视图控制器完成的,presentedViewController
是否真的会被设置......)。
【问题讨论】:
【参考方案1】:您可以在 UIViewController 上创建一个类别,并拥有自己的方法来presentModalWithNotification。这样您就永远不会忘记发送通知,并且您可以订阅此通知并在需要时使用它。
【讨论】:
以上是关于视图控制器以模态方式呈现/关闭时的通知?的主要内容,如果未能解决你的问题,请参考以下文章