He intentado que Android altere la imagen de fondo de una actividad, hasta ahora sin éxito. No tengo idea de lo que está mal.android: dither = "true" no tiembla, ¿qué ocurre?
Esto es lo que hice:
El elemento raíz de mi diseño es una actividad LinearLayout:
<LinearLayout android:id="@+id/AbsoluteLayout01"
android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:gravity="center_horizontal"
android:background="@drawable/background_dither">
donde añadí @ estirable/background_dither como imagen de fondo. pongo un archivo XML "background_dither.xml" en la embutición IPAP con el siguiente contenido:
<?xml version="1.0" encoding="utf-8"?>
<bitmap
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/backimg"
android:src="@drawable/background"
android:dither="true"
android:antialias="true" />
que hace referencia a la imagen real en background.png dibujable-IPAP. La imagen, que incluye un gran degradado de color, se muestra, pero con bandas de colores intensos. Por lo que he aprendido del SDK, esto puede mitigarse usando la definición de imagen proxy/por encima junto con la especificación de android: dither = "true". Sin embargo, esto no tiene ningún efecto.
¿Qué me hace falta para que funcione el difuminado?
EDIT
: Subida del sources here
EDIT2
: Después de que ninguno de los métodos sugeridos ayudó a deshacerse de bandas de color, después de leer this blog post from Romain Guy tuve la idea de comprobar si mi fondo PNG tiene un canal alfa. No fue así. Después de agregar uno, Android realmente parece usar RGB8888, como se dijo en la publicación y el anillado se ha ido (también para 2.2). Todavía me pregunto por qué los otros métodos no funcionaron.
EDIT3
: ¡Uno tiene que asegurarse de que PNG no solo tenga un canal alfa, sino también un píxel que tenga un valor alfa! = FF; de lo contrario, las herramientas de compilación de Android volverán a poner ese mapa de bits en un índice paleta sin canal alfa
Gracias. Intenté ambas opciones. Ninguno de ellos cambia la representación, así que supongo que todavía no funciona. :-( – machtnix