##はじめに
アプリ完成間際、ノッチの存在に気付き実装しました。
忘れがちなので、気をつけたいです。
##やりたいこと
iPhoneX以降、ノッチが出現したことにより、画面上部ぎりぎりに配置すると、
ノッチと被ってしまい画面上に表示されなくなってしまいます。
なので、ノッチがあるかないかを判定して、
ノッチがある場合 → ノッチ分(44pixel)ずらす
ノッチがない場合 → 画面上部ギリギリに配置
という方法をとることにしました。
##実装
view.swift
class view: UIViewController {
let text = UILabel()
override func viewDidLoad() {
//safeAreaの値を取得します。
let safeAreaInsets = UIApplication.shared.keyWindow?.safeAreaInsets.left
super.viewDidLoad()
//safeAreaの値が44.0以上であれば、ノッチがあるので、x位置をずらします。
if(safeAreaInsets! >= 44.0){
text.frame = CGRect(x:50,y:width/2, width:self.view.frame.height,height: 50)
}
//ノッチがない場合の処理
else{
text.frame = CGRect(x:10,y:width/2, width:self.view.frame.height,height: 50)
}
}
ノッチの値が44なので、今回は50ずらしました。