1. ホーム
  2. アイオス

[解決済み】Swift iOSアプリでステータスバーを非表示にするには?

2022-04-10 07:28:51

質問

画面上部のステータスバーを消したいのですが、どうすればいいですか?

これはうまくいきません。

func application
(application: UIApplication,
didFinishLaunchingWithOptions launchOptions: NSDictionary?)
-> Bool
{
        application.statusBarHidden = true
        return true
}

もやってみた。

func application
(application: UIApplication,
didFinishLaunchingWithOptions launchOptions: NSDictionary?)
-> Bool
{
    self.window = UIWindow(frame: UIScreen.mainScreen().bounds)

    var controller = UIViewController()
    application.statusBarHidden = true
    controller.setNeedsStatusBarAppearanceUpdate()

    var view = UIView(frame: CGRectMake(0, 0, 320, 568))
    view.backgroundColor = UIColor.redColor()
    controller.view = view

    var label = UILabel(frame: CGRectMake(0, 0, 200, 21))
    label.center = CGPointMake(160, 284)
    label.textAlignment = NSTextAlignment.Center
    label.text = "Hello World"
    controller.view.addSubview(label)

    self.window!.rootViewController = controller
    self.window!.makeKeyAndVisible()
    return true
}

解決方法は?

ビューコントローラに prefersStatusBarHidden を実装する必要があります。

Swift 3 以降

override var prefersStatusBarHidden: Bool {
    return true
}