Попытка установить яркость экрана на телефоне Android - PullRequest
3 голосов
/ 26 сентября 2011

Я пытаюсь установить яркость экрана, но когда я пытаюсь получить текущее окно с помощью this.getWindow (), я получаю нулевое значение.Почему это?Я опубликую весь мой код в моем методе setBrightness ().

System.putInt(getContentResolver(), System.SCREEN_BRIGHTNESS,
            brightness);
Window window = getWindow();
WindowManager.LayoutParams lp = window.getAttributes();
lp.screenBrightness = brightness / (float) 255;
window.setAttributes(lp);

Ответы [ 3 ]

0 голосов
/ 07 мая 2014

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

System.putInt(cResolver, System.SCREEN_BRIGHTNESS, brightness);
LayoutParams layoutpars = window.getAttributes();
layoutpars.screenBrightness = brightness / (float)255;
window.setAttributes(layoutpars);
0 голосов
/ 14 мая 2014

Если вы вызываете его из фрагмента, добавьте getActivity () перед getWindow () следующим образом

getActivity().getWindow().setAttributes(layoutParams);

И если использовать seekbar, не позволяйте вашему прогрессу быть 0, потому что это может сделать ваш экран полностью темным (включенAndroid 2.3)

0 голосов
/ 26 сентября 2011

Не используйте System.putInt () ... Вы уже установили яркость экрана в lp!

Работает следующий код:

Window window = getWindow();
float brightness = 100.0f;
WindowManager.LayoutParams lp = window.getAttributes();
lp.screenBrightness = brightness/255.0f;
window.setAttributes(lp);
...