首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UIPresentationController委托如何设置

UIPresentationController委托如何设置
EN

Stack Overflow用户
提问于 2019-08-11 08:43:56
回答 1查看 3K关注 0票数 0

在iOS 13中,当取消视图控制器时不调用viewWillAppear。作为一种解决方法,它被提到要覆盖UIAdaptivePresentationControllerDelegate委托,但它并不适用于我。我做错了什么?

代码语言:javascript
复制
 func prepare(for segue: UIStoryboardSegue, sender: Any?) {

    if segue.identifier == "MyVC" {
       let destination = segue.destination as! MyViewController
        destination.presentationController?.delegate = self
    } 
  }

然后,

代码语言:javascript
复制
func presentationControllerDidDismiss(_ presentationController: UIPresentationController) {
     resumePipeline() //<--Does not get called
}
EN

回答 1

Stack Overflow用户

发布于 2019-08-11 16:41:45

我做错了什么?

您可能假设在解雇发生时总是调用presentationControllerDidDismiss。这是个错误的假设。当用户拖下呈现的视图以拒绝它时,就会调用它。

您需要将呈现的视图控制器看作是一个弹出器。它并不是完全取代呈现视图控制器的视图;它只是部分地覆盖了它。所以没有viewDidAppear调用,因为主视图从未消失。

要么您需要回到强制您的呈现视图控制器成为fullScreen,要么您需要调整您的体系结构以使用新的呈现视图控制器风格。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57448555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档