DiggFlaskのアプリ達をiPhoneXの対応を着々と進めています。iPhoneX向けレイアウトの条件iPhoneX向けのレイアウトになる条件は、XCode9(iOS11)でビルドしたアプリLaunchScreenがiPhoneXの対象になっていることらしい。XCode8(iOS10)でビルドしたアプリは、多分SafeArea部分が黒く塗りつぶされる...ハズ。試せないので想像と期待ですが。LaunchScreenは、Storyboardと画像Assetのどちらかを使うかを選べます。Storyboardを使っていた場合は、対象になります。画像Assetの場合は、iPhoneX用の画像を用意したら対象になります。対応時に引っかかった所Insets画面の縦や横のサイズが変わってもピッタリとレイアウトされるようにコードからコンポーネントのサイズを変更したりしていた所の修正がいくつか必要だった。手抜きでUIScreen.main.boundsの端末サイズから計算してたとことか、bottomLayoutGuideの量を考慮し忘れとかなど。Insetsについては、Qiitaに記事を書いてみました。iOS11のInsetsとLayout誰かの助けになれば幸いデス。Barを表示していなかったアプリも、iPhoneXだと表示したくなる。Bar有りに変えたアプリがいくつかあります。iPhone8だと無しにしたい...というものもあって、切り分けたものもあります。綺麗に切り分ける方法はないっぽいので、SafeArea.topがコレ以上だったら...というハードコーディングした。気持ち悪いけども、まぁしょうがないかなと。画面下部にピッタリ置いたボタン手が届きやすいので、画面下部にボタンをよく配置していたのですが、iPhoneXだと下にスペースができちゃうので、イマイチになってしまう。この場合、ボタンの形状から考え直さないとなんともならなくて、左右にスペース開けて浮いた感じにしてみたり、角丸にしてみたり...とデザインの変更も。そもそもの話として、iPhoneXは縦長なので画面下部が押しにくそうなのが悩ましい。ぷにコンみたいなのが正解なのか。Barのチェックをしていない時、UITableViewがズレてしまうという、よく話されている問題。https://stackoverflow.com/questions/45573829/バグであって、修正されると信じたいなぁ。このために回避のコードを入れたくない。Reportを書いた。Push時のアニメーション関連は、まだ不安定な感じ。思うものの、iPhoneXをメイン端末として使いたい私としては、えこひいき的に考えてしまう(笑)あとは無事に実機をゲットできればよいのですがーー。