Respuestas:
No, no lo hay, vea cómo falta la sección "Atributos XML relacionados" en la documentación de ImageView.setAlpha (int) . La alternativa es usar View.setAlpha (float) cuya contraparte XML es android:alpha
. Se necesita un rango de 0.0 a 1.0 en lugar de 0 a 255. Úselo, por ejemplo, como
<ImageView android:alpha="0.4">
Sin embargo, este último solo está disponible desde el nivel 11 de API.
Es más fácil que la otra respuesta. Hay un valor xml alpha
que toma valores dobles.
android:alpha="0.0"
eso es invisible
android:alpha="0.5"
transparente
android:alpha="1.0"
totalmente visible
Asi es como funciona.
setAlpha(float)
y android:alpha
solo desde API 11 (Android 3.0). Antes de API 11, uno debe usar el código para establecer alfa para la imagen. Como sschuberth ya dijo en anser arriba.
No estoy seguro sobre el XML, pero puede hacerlo por código de la siguiente manera.
ImageView myImageView = new ImageView(this);
myImageView.setAlpha(xxx);
En pre-API 11:
En API 11+:
alpha
no tiene una contraparte de atributo XML cuando hay varios tamaños y posiciones.
Tal vez una alternativa útil para un fondo de color liso :
Coloque LinearLayout sobre ImageView y use LinearLayout como filtro de opacidad. A continuación, un pequeño ejemplo con un fondo negro:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF000000" >
<RelativeLayout
android:id="@+id/relativeLayout2"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon_stop_big" />
<LinearLayout
android:id="@+id/opacityFilter"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#CC000000"
android:orientation="vertical" >
</LinearLayout>
</RelativeLayout>
Varíe el atributo android: background del LinearLayout entre # 00000000 (totalmente transparente) y # FF000000 (completamente opaco).
use android: alpha = 0.5 para lograr la opacidad del 50% y para cambiar los íconos de Android Material de negro a gris.
El alfa se puede configurar junto con el color utilizando el siguiente formato hexadecimal #ARGB o #AARRGGBB. Ver http://developer.android.com/guide/topics/resources/color-list-resource.html
ImageView.setAlpha(int)
está tomando unint
tiempoandroid:alpha
está tomando un flotador, por lo que, estrictamente hablando, este último no es la contraparte XML exacta de la primera, pero es la contraparte deView.setAlpha(float)
. Y como ya se mencionó varias veces aquí,android:alpha
/View.setAlpha(float)
están disponibles solo a partir del nivel 11 de API.