うるおいらんど

【Xcode11】System Background Color イコール白じゃないぞという話

どうも。Reoです。

今回は、 iOS13 から対応が必要になった「ダークモード」についてのお話です。

対応方法は他の方の記事等を参照して欲しいのですが、ちょっと気をつけたい点について書いていこうと思います。

 

環境

Xcode 11.1

iOS 13.1.3

です。

 

System Background Color は白じゃないぞ

Xcode 11.1 から systemBackgroundColor というやつが追加されました。

生成したViewのデフォルトの背景色がコレになっています。

IB上では、白で表示されているのですが、厳密に言えばコイツは白ではないです。

 

端末を ダークモード にしてみるとあら不思議、暗くなります。(ダークモードだしね)

ラベルの色も Default なので色が変わってますね。

 

ちなみに Xcode10 でプロジェクトを開いてみると、System Background Color が存在しないので White Color になってました。

既存のプロジェクトってそのままアップデートかけるともしかして…と一瞬ヒヤッとしましたが、Xcode 10.x ではちゃんと色を指定してるので、その心配はなかったですね。(書きながら検証してるので、実はここ注意だよって書くつもりでした。)

ちゃんとDark Modeに対応しよう!

コレに尽きますね。

まず、Dark Modeに対応する予定がない場合は、プロジェクト全体に設定してしまいましょう。

 

Info.plist に User Interface Style を追加して Light と記述します。

これだけ!

これだけで、 System Background Color は白に固定されます。

 

Default 系の色を使うときは注意

上記のGIFもそうなんですが、Default系(System 〇〇 Color等)はDark Mode対応してない場合に色が変わる可能性があります。

 

ずっとシュミレータで確認してて、ようやく実機で確認すると、アレ?色おかしくね?となり、一瞬原因がわからなかったんですが、これでしたねー。

Dark Modeにしないならさっさと対応しておいた方が良いですね。

反対にDark Mode対応するには、この色達をうまく有効活用していきたいですね!

 

 

何を当たり前なことを書いてるんだって気がするんですが、意外と抜けちゃうような気もするし、実際自分もアレ?ってなったので、気をつけたいですね。

特に普段ダークモードを使わない方は気をつけましょうね・・・!

 

2ヶ月ぶりの記事がこんなちょっと出遅れてる感ある記事ですが、ご愛嬌ということで(なんかちがう)

最新をあんまり追えてない人間なので、自分みたいな人が おっ と思ってくれたら良いなと思って投稿します。

なんか、毎回の記事の最後に、次は〇〇の記事を書きます!とか言ってなんも書いてない気がしますね。久々すぎて、普段どんな風に書いてたっけっていうレベルになってしまいました。うーん。

今回の期間の空き方は本当に良くないので、投稿ペースあげられるように頑張ります。

 

ではでは〜。

Comments

コメントはありません。

現在コメントフォームは工事中です。