3

私は Android アプリを作成していますが、昼と夜のモードに 2 つの異なるテーマ (異なる色と異なるドローアブル) が必要です。

それを行う最良の方法は何ですか?

UiModeManager というサービスに気付きましたが、期待どおりに動作するかどうかはわかりません。drawable-mdpi と drawable-night-mdpi に 2 つの異なるビットマップ (同じ名前) を配置し、そのビットマップを表示するアクティビティを作成しました。

onCreate() を入れて昼夜モードを切り替えようとしました:

    UiModeManager uiManager = (UiModeManager) getSystemService(Context.UI_MODE_SERVICE);
    uiManager.setNightMode(UiModeManager.MODE_NIGHT_YES);

しかし、Android では常に「日」バージョンが表示されます。

任意の提案やヒントをいただければ幸いです。

ありがとう、マウリツィオ

4

1 に答える 1

1

HoneycombGallery サンプルには、テーマ (背景 + ドローアブルなど)の昼夜切り替え機能があります。彼らは 2 つのテーマのみを定義し、 を介してコードで設定しましたsetTheme()。多分それはあなたを助ける

編集: ドキュメントsetNightMode()によると、「ナイト モードへの変更は、デバイスで車またはデスク モードが有効になっている場合にのみ有効です。」

于 2012-04-06T11:28:17.507 に答える