search
LoginSignup
3

More than 1 year has passed since last update.

Organization

iPhoneX系の画面の下のバー(Home Indicator)を非表示にする方法

IMG_7320.PNG

画面の下にいつもいるバー
Home Indicatorという名前です。
iPhoneXが発売されて数年、私は知りませんでした。
全画面でコンテンツを表示したい時にこのバーだけ表示されてしまっていると見た目が悪いですよね。

但し常に非表示にしておくということはできませんが操作をしていない場合に非表示になってくれる実装方法があります。

非表示にしたいViewControllerに以下の一行を追加します。

ViewController.swift
override var prefersHomeIndicatorAutoHidden: Bool { true }

公式ドキュメント:
prefersHomeIndicatorAutoHidden

常に表示するという状態と、操作していない場合は非表示にしたい、という二つの状態を切り替えたいというときは以下のような実装をします。

ViewController.swift

private var indicatorAutoHidden:Bool = false {
    didSet {
        self.setNeedsUpdateOfHomeIndicatorAutoHidden()
    }
}

override var prefersHomeIndicatorAutoHidden: Bool { 
    return self.indicatorAutoHidden
}

setNeedsUpdateOfHomeIndicatorAutoHiddenを呼び出すことですぐさま表示、非表示状態の更新を切り替えることができます。

公式ドキュメント:
setNeedsUpdateOfHomeIndicatorAutoHidden

終わりです

Brewus,Inc.
株式会社ブリューアス
https://brewus.co.jp

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
3