web-dev-qa-db-fra.com

Comment définir un fond transparent pour Image Button dans le code?

Je peux définir un arrière-plan ImageButton transparent dans layout.xml En utilisant:

Android:background="@Android:color/transparent"

Comment puis-je accomplir la même chose en utilisant Java code? Quelque chose comme ib.setBackgroundColor(???);

74
Peter

C’est simple, vous devez définir la couleur de fond comme transparente

    ImageButton btn=(ImageButton)findViewById(R.id.ImageButton01);
    btn.setBackgroundColor(Color.TRANSPARENT);
136
Parag Chauhan

Faites-le dans votre xml

<ImageButton
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:id="@+id/imageButtonSettings"
        Android:layout_gravity="right|bottom"
        Android:src="@drawable/tabbar_settings_icon"
        Android:background="@Android:color/transparent"/>
28
bsautner

Cela devrait fonctionner - imageButton.setBackgroundColor(Android.R.color.transparent);

11
Abhinav Manchanda

N'UTILISEZ PAS DE TRANSAPENT OR NULL LAYOUT car alors le button (ou la vue générique) ne sera plus mis en évidence au clic !!!

J'ai eu le même problème et j'ai finalement trouvé l'attribut correct de l'API Android pour résoudre le problème. Il peut s'appliquer à n'importe quelle vue.

Utilisez ceci dans les spécifications du bouton

Android:background="?android:selectableItemBackground"

Cela nécessite l'API 11

10
Xar E Ahmer

utilisez simplement ceci dans votre layout imagebutton

Android:background="@null"

en utilisant

 Android:background="@Android:color/transparent 

ou

 btn.setBackgroundColor(Color.TRANSPARENT);

ne donne pas une transparence parfaite

3
bourax webmaster

Essayez comme ça

ImageButton imagetrans=(ImageButton)findViewById(R.id.ImagevieID);

imagetrans.setBackgroundColor(Color.TRANSPARENT);

OR

inclure ceci dans votre fichier .xml dans res/layout

Android:background="@Android:color/transparent 
3
Bunny

Si vous souhaitez utiliser Android R class

textView.setBackgroundColor(ContextCompat.getColor(getActivity(), Android.R.color.transparent));

et n'oubliez pas d'ajouter la bibliothèque de support au fichier Gradle

compile 'com.Android.support:support-v4:23.3.0'
2
MarsPeople