どういうことか
ダークモードを無効にするためにinfo.plistにて User Interface Style を Light にしても実機でビルドしてもダークモードで表示されてしまう。
原因とやってみたこと
Controllerにて
self.overrideUserInterfaceStyle = .light
と書く。
そしたら 'overrideUserInterfaceStyle' is only available in iOS 13.0 or newer というエラーが出た。プロジェクトをiOS12から対応するように設定しているから出るみたい。fixボタンを押すと
if #available(iOS 13.0, *) {
self.overrideUserInterfaceStyle = .light
}
こんな感じになり、ライトモードで表示されるようになる。
――が、それを全部のControllerに書くか??というとちょっとどんくさすぎる。
解決策
info.plistに User Interface Style ではなく Appearance と書いて Light を指定するとうまくいく。
参考
UIUserInterfaceStyle key is not available in Info.plist in Xcode 12, how to disable Dark Mode in Xcode 12 from Info.plist?
https://stackoverflow.com/questions/64027842/uiuserinterfacestyle-key-is-not-available-in-info-plist-in-xcode-12-how-to-disa