删除statusBar文本,如SWIFT中的iOS Gmail App

时间:2015-12-19 02:55:09

标签: ios swift

这个问题不是删除状态栏!想要删除状态栏的文字

我徘徊,打开左侧导航面板时, iOS Gmail应用如何隐藏状态栏文字

enter image description here

我可以通过prefersStatusBarHidden()来隐藏statusBar,但它也会删除statusBar栏的空间。因此导航栏看起来很窄。

override func prefersStatusBarHidden() -> Bool {
    return true
}

但在Gmail应用中,它仅隐藏文本,但不会删除StatusBar的空间。他们是如何做到的?

1 个答案:

答案 0 :(得分:0)

以下代码适用于我。

var statusBarHidden = false

override func prefersStatusBarHidden() -> Bool {
    UIStatusBarAnimation.Fade
    return statusBarHidden
}

func showMenu() {
    // Navigation Menu Code
    statusBarHidden = true
    prefersStatusBarHidden()
    setNeedsStatusBarAppearanceUpdate()
}

func hideMenu() {
    // Navigation Menu Code
    statusBarHidden = false
    prefersStatusBarHidden()
    setNeedsStatusBarAppearanceUpdate()
}

修改

UINavigationBar需要固定高度。 如果您使用UINavigationController,那么我遗漏了两个重要步骤(全部在Interface Builder中完成)。

  1. 选择UINavigationController并在属性检查器下,您需要取消选择"显示导航栏。"
  2. UINavigationBar添加UIViewController并将height固定为55(或符合您需要的任何值)。