首页 文章

导航栏未覆盖iPhone X上的状态栏

提问于
浏览
1

我有一个简单的视图控制器,其视图( Map )固定到其超级视图 . 视图嵌入在导航控制器上,但导航栏从iPhone X上的安全区域(状态栏下方)开始 . 理想情况下,我希望条形图位于状态栏下方(不在其下方),当在iPhone X.我该怎么做呢?

enter image description here

这就是设置条形以使其半透明的方式:

//Design Set Up
let navBar = UINavigationBar.appearance()
navBar.setBackgroundImage(UIImage(), for: .default)
navBar.backgroundColor = UIColor(displayP3Red: 0, green: 0, blue: 0, alpha: 0.5)

1 回答

  • 1

    您应该将视图控制器嵌入 UINavigationController ,而不是仅使用 UINavigationBar . 这样,您将自动获得带有导航控制器的导航栏,它将完全扩展到屏幕顶部 .

    https://developer.apple.com/documentation/uikit/uinavigationcontroller

    您可以在故事板中添加它,或者如果您使用的是代码,例如:

    let mapViewController = UINavigationController(rootViewController: MapViewController())
    

    (假设你的 Map 被称为 MapViewController

相关问题