Яркость экрана Android, которая не падает - PullRequest
1 голос
/ 06 июля 2011

У меня есть активность, которая повышает яркость экрана

/* turn screen brightness up */ this.getWindow().getAttributes().screenBrightness = 1;

Я обнаружил, что эта встроенная функция Android ломает некоторые телефоны.

Есть ли более универсальный способ повысить яркость экрана?

Ответы [ 3 ]

2 голосов
/ 06 июля 2011

Правильный способ установки атрибутов: setAttributes():

WindowManager.LayoutParams lp = this.getWindow().getAttributes();
lp.screenBrightness = 1;
this.getWindow().setAttributes(lp);
0 голосов
/ 16 апреля 2013

Если вы хотите, чтобы сенсорные события проходили через вас, вам нужно сделать больше, чем просто настроить яркость.Вам необходимо установить параметры просмотра и макета.
view.setFocusable(false);<br> view.setClickable(false);<br> view.setKeepScreenOn(false);<br> view.setLongClickable(false);<br> view.setFocusableInTouchMode(false);

layoutParams.height = LayoutParams.FILL_PARENT;<br> layoutParams.width = LayoutParams.FILL_PARENT;<br> layoutParams.flags = 280; // You can try LayoutParams.FLAG_FULLSCREEN too<br> layoutParams.format = PixelFormat.TRANSLUCENT; // You can try different formats<br> layoutParams.windowAnimations = android.R.style.Animation_Toast; // You can use only animations that the system to can access<br> layoutParams.type = LayoutParams.TYPE_SYSTEM_OVERLAY;<br> layoutParams.gravity = Gravity.BOTTOM;<br> layoutParams.x = 0;<br> layoutParams.y = 0;<br> layoutParams.verticalWeight = 1.0F;<br> layoutParams.horizontalWeight = 1.0F;<br> layoutParams.verticalMargin = 0.0F;<br> layoutParams.horizontalMargin = 0.0F;

Взгляните на мой оригинальный пост .

0 голосов
/ 06 июля 2011

Вы можете попробовать значение, которое почти 1. Например: 0.999.

...