【问题标题】:UiModeManager - NightMode (Froyo)UiModeManager - 夜间模式 (Froyo)
【发布时间】:2010-05-23 14:45:50
【问题描述】:

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

我尝试过使用以下代码:

UiModeManager 经理 = (UiModeManager) 获取系统服务(UI_MODE_SERVICE); mgr.setNightMode(UiModeManager.MODE_NIGHT_YES);

UiModeManager.setNightMode(int mode) 文档是这样说的:

设置夜间模式。的变化 夜间模式仅在 汽车或桌面模式启用 设备。

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

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

【问题讨论】:

  • 不确定这是否有用,但视频播放器现在关闭背光,而 2.1 没有。

标签: android android-2.2-froyo


【解决方案1】:

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

我认为您不必使用 UIModeManager 类。这就是 DeskClock 应用的作用:

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

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

win.setAttributes(winParams);

..它也适用于我。

【讨论】:

猜你喜欢
  • 2022-11-10
  • 1970-01-01
  • 1970-01-01
  • 2018-11-22
  • 2023-03-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-30
相关资源
最近更新 更多