如何在TouchID警报出现时删除状态栏?

时间:2015-02-09 19:07:25

标签: ios swift appdelegate touch-id

我试图在整个应用中隐藏状态栏。但是,当应用程序中出现 TouchID 警报时,会显示状态栏。

在我的AppDelegate.swift文件中,我添加了一行:
application.statusBarHidden = true

这似乎不包括 TouchID 功能出现时的情况。这种情况有特定的东西吗?

2 个答案:

答案 0 :(得分:1)

我知道它迟到了,但对于那些仍然面临同样问题的人。它不是Apple的bug。你必须自己解决它。

我已经通过iOS 9,10,11进行了检查,并且工作正常。只需执行以下步骤:

  • 打开info.plist
  • “查看基于控制器的状态栏外观”设置为NO
  • “状态栏最初隐藏”设置为YES

完成了:)

答案 1 :(得分:0)

我认为这是一个操作系统错误。我们将不得不等待Apple修复它。

与此同时,总会有令人讨厌的变通办法。 尝试在0.2秒后隐藏状态栏。

// Add this in the function that calls Touch ID
var dispatchTime: dispatch_time_t = dispatch_time(DISPATCH_TIME_NOW, Int64(0.2 * Double(NSEC_PER_SEC)))
  dispatch_after(dispatchTime, dispatch_get_main_queue(), {
    self.hideStatusBar()
  })


// Add this function
func hideStatusBar () {
  UIApplication.sharedApplication().statusBarHidden = true
}