【Swift】Xcodeでアプリのダークモード適用を禁止する

今回は iOS 13 から追加されたダークモードについてです。
ダークモードが有効になっている端末では、アプリのデザインがダークモードに対応した見た目になり、全体的に黒っぽい配色になります。
が、アプリによってはダークモードの全体的に黒っぽいデザインにしたくない場合もあるかと思います。
そんな時に、アプリのダークモード適用を禁止する方法があります。

参考にさせていただいた記事はこちらから。

ダークモード適用を回避する方法 – Qiita
https://qiita.com/hiroyuki7/items/161881c38bd6e19fd396

なお、幸いにも現在開発中のアプリはダークモードを無効にしなくてもデザインが大きく崩れなかったので、ダークモードは禁止にしてはいません。
が、他のアプリでは必要になるかもしれないので、今後のためにまとめ。

 

まず、ViewController 毎にダークモード適用を無効化する方法です。
方法はいたって簡単で、viewDidLoad 内などで、下記のコードを追加するだけです。

self.overrideUserInterfaceStyle = .light

overrideUserInterfaceStyle にライトモードを指定することで、常にライトモードになります。
逆に言えば、overrideUserInterfaceStyle.dark を指定すれば、ダークモードを有効にしていない端末でもアプリの見た目がダークモードになるのだと思います。

もう1つは、Info.plist で設定する方法です。
UIUserInterfaceStyle という項目に Light というパラメータを追加することで、ダークモード適用を無効化できます。
こちらの設定はアプリ全体に適用されるので、1つ目の方法のように、全ての ViewControlloer に記述しなくても良いので、こちらの方がお手軽だと思います。
是非、どちらかお好きな方を採用してください。

なお、参考サイトの筆者様も書かれていましたが、恐らくいずれはダークモードへの対応は必須になるかと思いますので、これらの方法は一時的な対応方法だと思った方が良いと思います。
私も時間を見つけて、過去に開発したアプリを確認したいです。

 

以上、Swift でアプリのダークモードの適用を禁止する方法でした。
ご参考になれば幸いです。

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG