我一直在尝试使用 UiModeManager 的夜间模式功能关闭应用程序中按钮的背光。默认的桌面时钟应用程序 (Nexus One) 在变暗时关闭背光,我也想这样做。

我尝试使用以下代码:



UiModeManager.setNightMode(int mode) 文档说:



这是否意味着设备必须物理放置在桌面扩展坞中?
我可以使用 UiModeManager.enableCarMode(int flags) 方法将设备设置为汽车模式。这工作正常,但它不会关闭灯,它只会使屏幕的背光变暗。

有没有办法在不使用物理桌面扩展坞的情况下将设备设置为桌面模式?由于 FroYo 源代码尚未发布,我无法查看内置的 Desk Clock 应用程序。

最佳答案

在 Froyo 源代码刚刚发布时回答我自己的问题:

我认为您不必使用 UIModeManager 类。这是 DeskClock 应用程序的工作方式:

Window win = getWindow();
WindowManager.LayoutParams winParams = win.getAttributes();

//Look at this!
winParams.buttonBrightness = WindowManager.LayoutParams.BRIGHTNESS_OVERRIDE_OFF;

win.setAttributes(winParams);

..它也适用于我。

关于android - UiModeManager - 夜间模式 (Froyo),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2892160/

10-12 04:02