3

我正在构建一个 Android 应用程序,我需要为白天和夜间模式设置两个不同的主题:不同的颜色和不同的可绘制对象。

最好的方法是什么?

我注意到一个名为 UiModeManager 的服务,但我不确定它的行为是否符合我的预期。我在 drawable-mdpi 和 drawable-night-mdpi 中放置了两个不同的位图(同名),并创建了一个显示该位图的 Activity。

我试图通过放入 onCreate() 来切换日/夜模式:

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

但Android总是显示“日”版本。

任何建议或提示将不胜感激。

谢谢,毛里齐奥

4

1 回答 1

1

HoneycombGallery 示例有一个用于主题(背景 + 可绘制对象等)的日/夜切换器。他们只定义了两个主题并通过setTheme(). 也许这对你有帮助

编辑:根据文档setNightMode() “更改夜间模式仅在设备上启用汽车或桌面模式时有效。”

于 2012-04-06T11:28:17.507 回答