【Cordova】iOSでcordova-plugin-statusbarのテキストが白色になってしまう

地味に悩んでいたことが解決できたので、対処法をまとめ。
タイトルにある通り、Cordova で開発した iOS アプリのステータスバーの文字色が白色になってしまう時の対処法です。
ステータスバーの背景色に白が目立つ色を指定してある場合は問題ないのですが、開発中のアプリはステータスバーの色に白色を指定していたため、時刻等が全く見えない状態になっていました。

ちなみに、プラグインは下記を利用しています。

GitHub – apache/cordova-plugin-statusbar: Apache Cordova
https://github.com/apache/cordova-plugin-statusbar

 

さてこの現象ですが、原因は「ダークモード」でした!
言われてみれば、シュミレーターやダークモードを有効にしていない端末では文字色は黒で表示されており、ダークモードを有効にしている私の私物端末では文字色が白色になっていました…!

なので、このダークモードを強制的に無効にします。
設定方法は簡単で config.xml に下記を追加するだけです。

<config-file parent="UIUserInterfaceStyle" platform="ios" target="*-Info.plist">
    <string>Light</string>
</config-file>

なお、こちらの記述は <platform name="ios"> タグ内に追加してください。

こちらを追加してアプリを再度実行すると、Xcode の Info.plistUIUserInterfaceStyle というパラメータに Light が指定されます。
で、ダークモードを有効にした実機でアプリを実行したところ、無事、ステータスバーの文字色が黒色になりました!

 

以上、Cordova で開発した iOS アプリでステータスバーの文字色が白色になってしまう時の対処法でした。
ご参考になれば幸いです。

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

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

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

CTR IMG