Comment rendre une image transparente sur Android?
j'utilise une disposition linéaire et une disposition de cadre. Dans la disposition linéaire, je garde une image en arrière-plan et dans la disposition de cadre, je garde une vue d'image. Dans cet imageView, je donne une image.
maintenant je veux rendre transparente la deuxième image (qui est dans imageView). Comment puis-je faire cela?
10 réponses
essaye ceci:
ImageView myImage = (ImageView) findViewById(R.id.myImage);
myImage.setAlpha(127); //value: [0-255]. Where 0 is fully transparent and 255 is fully opaque.
Remarque::setAlpha(int)
est déprécié en faveur de myImage.setAlpha(0.5f)
android:alpha
est-ce en XML:
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/blah"
android:alpha=".75"/>
définir un attribut id sur L'ImageView:
<ImageView android:id="@+id/myImage"
dans votre code où vous souhaitez cacher l'image, vous aurez besoin du code suivant.
tout d'Abord, vous aurez besoin d'une référence à l'ImageView:
ImageView myImage = (ImageView) findViewById(R.id.myImage);
Ensuite, définir la Visibilité à DISPARU:
myImage.setVisibility(View.GONE);
si vous voulez avoir du code ailleurs qui le rend à nouveau visible, mettez-le de la même façon:
myImage.setVisibility(View.VISIBLE);
si vous voulez dire" entièrement transparent", le code ci-dessus fonctionne. Si vous voulez dire "partiellement transparent", utilisez la méthode suivante:
int alphaAmount = 128; // Some value 0-255 where 0 is fully transparent and 255 is fully opaque
myImage.setAlpha(alphaAmount);
si vous êtes dans un fichier XML, utilisez ce qui suit pour rendre votre imageview transparent!
android:background="@null"
sur les nouvelles versions D'Android (Post Android 4.2 (Jelly Bean) au moins), la méthode setAlpha(int valeur) est dépréciée. Au lieu de cela, utilisez setAlpha(float value)
méthode qui prend un flottant entre 0 et 1 où 0 est une transparence complète et 1 Pas de transparence.
définir la transparence en utilisant setAlpha(float alpha)
. Le code ci - dessous fonctionne pour moi où j'ai utilisé une valeur alpha dans float, 0-1.
- 0: Totalement Transparent
- 0.5 - 50%: Transparent
1: Entièrement Opaque
ImageView imageView = (ImageView) itemView.findViewById (R. id.imageView); imageView.setImageResource(mResources[position]); imageView.setAlpha(.80f);
en XML, utilisez:
android:background="@android:color/transparent"
La méthode setAlpha(int)
du type ImageView est déprécié.
au Lieu de
image.setImageAlpha(127);
//value: [0-255]. Where 0 is fully transparent and 255 is fully opaque.
pour 20% de transparence, cela a fonctionné pour moi:
Button bu = (Button)findViewById(R.id.button1);
bu.getBackground().setAlpha(204);
Utilisation:
ImageView image = (ImageView) findViewById(R.id.image);
image.setAlpha(150); // Value: [0-255]. Where 0 is fully transparent
// and 255 is fully opaque. Set the value according
// to your choice, and you can also use seekbar to
// maintain the transparency.