2009-11-24 10 views
10

Estoy buscando agregar controles para ajustar el brillo de la pantalla localmente en el menú de mi aplicación, pero parece que no puedo encontrar la manera de hacerlo. He visto ejemplos para maximizar o atenuar el brillo, pero estoy buscando agregar controles para que el usuario pueda controlar y establecer el nivel de brillo. ¿Alguien tiene ejemplos, tutoriales, código fuente o solo un lugar para dirigirme en la dirección correcta?Agregar controles de brillo de pantalla a la aplicación de Android

Respuesta

26

The internet reclamaciones esto funciona, no lo han intentado sin embargo:

WindowManager.LayoutParams lp = getWindow().getAttributes(); 
lp.screenBrightness = 100/100.0f; 
getWindow().setAttributes(lp); 
+0

Gracias, de hecho, esto funcionó para mí – Cymon

+0

Eso funciona desde una actividad ... alguna idea de cómo hacerlo desde un widget? El widget Power Manager para Android 2.0 lo hace. Quiero poder hacerlo desde mi widget. –

+0

¡Funciona, gracias! – Dr1Ku

1

Esta es contestada por un question similares.

La única diferencia es que querrá vincular el screenBrightness miembro al valor de un control de interfaz de usuario.

Tenga en cuenta que esto puede no funcionar como se espera en los dispositivos que tienen sensores de atenuación automática.

10

Puede cambiar la configuración del brillo del usuario como esto (asegúrese de que se declara el permiso para WRITE_SETTINGS en el manifiesto)

android.provider.Settings.System.putInt(getContentResolver(), 
         android.provider.Settings.System.SCREEN_BRIGHTNESS, brightpref); 

La documentación llama a que el establecimiento de 0 a 255. Estoy tratando de averiguar si apaga la pantalla a 0, ya que en un momento tuve un widget instalado con un control deslizante y la pantalla se cerraría si lo configuraste en 0.

Cuestiones relacionadas