美文网首页Swift开发
适配 iOS 13 上 UIViewController 的 m

适配 iOS 13 上 UIViewController 的 m

作者: devdawei | 来源:发表于2019-08-20 17:12 被阅读0次

    适配 iOS 13 上 因 modalPresentationStyle 值变成了 UIModalPresentationPageSheet,导致之前通过 presentViewController:animated:completion: 方法弹出的控制器效果非全屏的问题

    我是通过 Category 和 Method Swizzling 的方式,当设置 UIViewController 的 modalPresentationStyle 的时候,记录下已经设置过此值,当调用 presentViewController:animated:completion: 方法的时候,判断将要弹出的 UIViewController 是否设置过 modalPresentationStyle 的值,如果没有设置过,并且 modalPresentationStyle 值为 UIModalPresentationPageSheet,则说明是 iOS 13 中的默认设置,在这种情况下,我把 modalPresentationStyle 值改为 UIModalPresentationFullScreen,然后再弹出控制器,就可以解决在 iOS 13 弹出的控制器效果非全屏的问题,同时也不影响之前设置过 modalPresentationStyle 的控制器。

    GitHub地址点这里

    相关文章

      网友评论

        本文标题:适配 iOS 13 上 UIViewController 的 m

        本文链接:https://www.haomeiwen.com/subject/qubpsctx.html