【Swift UIKit】ダークモードを適応させない方法!info.plistから変更

この記事からわかること

  • UIKitアプリ内からダークモード/ライトモード切り替える方法
  • overrideUserInterfaceStyleとは?
  • UIUserInterfaceStyle
  • info.plistから変更する方法

index

[open]

\ アプリをリリースしました /

みんなの誕生日

友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-

posted withアプリーチ

SwiftのUIKitフレームワーク使用時にダークモードを適応させないようにする方法をまとめました。

ダークモードを適応させないようにする方法

UIKitで表示させているビューに対してダークモードを適応させないようにするにはviewDidLoadメソッド内でoverrideUserInterfaceStyleプロパティにlightをセットします。

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // 常にライトモード(明るい外観)を指定することでダークモード適用を回避
        self.overrideUserInterfaceStyle = .light
    }

}

これでこのViewControllerが管理している画面はダークモードに変わらないですみます。

UIUserInterfaceStyle

値として指定していたlightは列挙型UIUserInterfaceStyleの値です。

公式リファレンス:UIUserInterfaceStyle

enum UIUserInterfaceStyle {
    case unspecified  //  指定なし
    case light  //  ライトモード
    case dark  //  ダークモード
}

なのでoverrideUserInterfaceStyleの値にdarkを指定すると常にダークモードが適応された状態にすることも可能です。

Swift UIでは列挙型ColorSchemeとして定義されており設定方法が異なります。

info.plistからアプリ自体の設定を変更する

画面ごとではなくアプリ全体でダークモードorライトモードを指定するには「info.plist」にキー「Appearance」を追加して、値に設定したいモード「Light」などを渡すことで指定することができます。

【Swift UIKit】ダークモードを適応させない方法!info.plistから変更

まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。

ご覧いただきありがとうございました。

searchbox

スポンサー

ProFile

ame

趣味:読書,プログラミング学習,サイト制作,ブログ

IT嫌いを克服するためにITパスを取得しようと勉強してからサイト制作が趣味に変わりました笑
今はCMSを使わずこのサイトを完全自作でサイト運営中〜

New Article

index