小编典典

检测表已在iOS 13上关闭

swift

在iOS 13之前,提供了用于覆盖整个屏幕的视图控制器。并且,在关闭后,将viewDidAppear执行父视图控制器功能。

现在,iOS
13默认将表单显示为视图控制器,这意味着卡将部分覆盖基础视图控制器,这意味着viewDidAppear不会被调用,因为父视图控制器从未真正消失过。

有没有一种方法可以 检测到所显示的视图控制器工作表已被解雇 ?我可以在父视图控制器中重写某些其他功能, 而不是使用某种委托


阅读 437

收藏
2020-07-07

共1个答案

小编典典

有没有办法检测到所显示的视图控制器工作表已被解雇?

是。

我可以在父视图控制器中重写某些其他功能,而不是使用某种委托?

不,“某种委托”是您的工作方式。使自己成为演示控制器的委托和重写presentationControllerDidDismiss(_:)

https://developer.apple.com/documentation/uikit/uiadaptivepresentationcontrollerdelegate/3229889-presentationcontrollerdiddismiss


缺少一个一般的运行时生成的事件来通知您,所显示的视图控制器(无论是否为全屏)已被关闭,这确实很麻烦。但这不是一个新问题,因为始终存在非全屏显示的视图控制器。仅仅是现在(在iOS
13中),它们更多了!

2020-07-07