gpt4 book ai didi

statusbar - iOS 8.3 modalPresentationStyle OverCurrentContext 不继承状态栏外观和可见性

转载 作者:行者123 更新时间:2023-12-02 22:56:24 24 4
gpt4 key购买 nike

考虑以下设置:

  • 您有一个简单的应用程序,其中包含一个 UINavigationController 子类和一个 UIViewController 子类。
  • UINavigationController 重写 preferredStatusBarStyle() 方法并返回 UIStatusBarStyle.LightContent
  • UIViewController 重写 prefersStatusBarHidden() 方法并返回 true

在 iOS 8.0 - 8.2 中,当另一个 UINavigationController(以及另一个不覆盖任何内容的 UIViewController)呈现时,modalPresentationStyle 设置为 UIModalPresentationStyle.OverCurrentContext code>,新呈现的 Controller 继承了状态栏的外观和可见性。

但在 iOS 8.3 中,情况完全相同 - 新呈现的 Controller 不会继承状态栏外观和可见性

另一个示例是呈现 UIImagePickerController 的实例 - 对于状态栏外观,会发生完全相同的事情。

问题是:

  • 为什么在 iOS 8.3 中新出现的 Controller 不继承状态栏外观?
  • 发生了哪些变化(我在 iOS 8.2 到 8.3 API 差异中找不到任何与此相关的有意义的引用)?
  • 是否有任何优雅的解决方案,而不是到处覆盖外观和可见性方法?

最佳答案

尝试一下:

(viewControllerToBePresented).modalPresentationCapturesStatusBarAppearance = true

关于statusbar - iOS 8.3 modalPresentationStyle OverCurrentContext 不继承状态栏外观和可见性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29781790/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com