iPhone Xのヒューマンインターフェースガイドライン を読みましたが、「安全な領域」(iPhone Xのトップノッチとボトムバーの両方に対応する領域)を明確に述べていません。上部と下部から削除された寸法を含む、この領域のピクセル寸法を知りたいです。
現在のウィンドウのセーフエリアインセットを次のコードで印刷すると、上部および下部のセーフエリアのポイントの寸法を取得できます。
if #available(iOS 11.0, *) {
UIApplication.shared.keyWindow?.safeAreaInsets
// ...
}
ポートレートでは、上部の領域は44ポイントで、下部の領域は4ポイントの長さです。
IPhone Xの解像度は@ 3xであるため、上部の領域は132ピクセルで、下部の領域は102ピクセルです。
Xcode 9では、セーフエリアレイアウトガイドがインターフェイスビルダーに導入されました。ストーリーボードのファイルインスペクターにアクセスして、 「セーフエリアレイアウトガイドを使用」というチェックボックスをオンにする
そこからルートビューに制約を追加するたびに、代わりに安全な領域に制約を設定するオプションが表示されます。 この写真では 、オレンジ色のビューはセーフエリアの端に制限され、青色のビューはスーパービューの端に制限されています。
そこから、上部のセーフエリアに44ポイントが使用され、下部のエリアに34ポイントが使用されたと計算できます。
safeAreaInsets
のビューのUIViewController
プロパティから取得できます。