1

デバイスの自動輝度が有効になっている場合、画面の輝度を変更する以下のコードは機能しません。

Window w = getWindow();
WindowManager.LayoutParams lp = w.getAttributes();

lp.screenBrightness=0.09f;
getWindow().setAttributes(lp);

自動輝度でも動作するようにこのコードを変更するにはどうすればよいですか?

4

2 に答える 2

2

免責事項: このコードは一種の「ハック」であり、すべての Android バージョンとすべての Android フォンで機能しない可能性があり、最適なコード プラクティスではない可能性があります。デバイスが爆発したり、雨が降ったりしても、私は一切責任を負いません:)

そうは言っても、自動輝度を一時的に無効にしたい場合があります。

Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);

そして、再度有効にします。

Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
于 2013-11-27T15:30:41.940 に答える