Ich habe eine UITabBarController()
, die ich verwende, und weisen in AppDelegate
:iOS10: Verstecken Statusleiste, wenn ein UITabBarController() verwendet
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
showTabBar()
return true
}
func showTabBar() {
let tabBarVC = TabBarVC()
if let window = self.window {
window.rootViewController = tabBarVC
}
}
Ich habe folgende Schlüssel ist in info.plist
:
In meinem Target
unter General
habe ich die folgende Einstellung:
ich den folgenden Code in einer meiner Registerkarten verwenden, um die Statusleiste auszublenden:
class ViewController: UIViewController {
var statusBarShouldBeHidden = false
override func viewDidLoad() {
super.viewDidLoad()
}
override var prefersStatusBarHidden: Bool {
return statusBarShouldBeHidden
}
override var preferredStatusBarUpdateAnimation: UIStatusBarAnimation {
return .slide
}
@IBAction func buttonHideShowStatusBarTapped(_ sender: UIButton) {
statusBarShouldBeHidden = !statusBarShouldBeHidden
UIView.animate(withDuration: 0.25) {
self.setNeedsStatusBarAppearanceUpdate()
print("animating")
}
}
}
Wenn die Taste abgegriffen wird, druckt im Protokoll „Animieren“; Die Statusleiste wird jedoch nicht ausgeblendet.
Ich bin mir nicht sicher, ob dies mit UITabBarController()
verwandt ist, aber der obige Code scheint in einem Projekt ohne es gut zu funktionieren.
Wie kann ich die Statusleiste in iOS10 ausblenden, wenn Sie UITabBarController()
verwenden?