Question

J'utilise une vue web où j'ajoute une vue de l'image. Comment puis-je mettre l'arrière-plan de ce point de vue de l'image à la transparence?

J'ai essayé ceci:

mImageview.setBackgroundResource(R.color.trans);

trans<color name="trans">#00000000 </color>.

Était-ce utile?

La solution

Dans votre XML définir l'attribut Background à toute couleur, ombre White(#FFFFFF) ou ombre Black(#000000). Si vous voulez la transparence, il suffit de mettre 80 avant le code de hachage réelle:

#80000000

Cela changera la couleur que vous voulez un transparent ..:)

Autres conseils

Vous pouvez définir le fond transparent de toute disposition, toute vue ou tout composant en ajoutant ce code XML:

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

En plus de ce Harshad mentionné:

Deux caractères hexadécimaux peuvent être ajoutés à un code de couleur hexadécimal. Les deux premiers caractères en un code de couleur hexadécimal à 8 chiffres représentent l'opacité dans les applications.

Les deux caractères hexadécimaux peuvent aller de 00 à FF. Par exemple,

  • Normal hex- noir opaque "de # 000000"
  • Entièrement transparent - "# 00000000"
  • Entièrement opaque - "# FF000000"
  • 50% transparent - "# 7F000000"

De cette façon, vous pouvez modifier la couleur à un niveau de transparence.

Pour trouver le préfixe hexadécimal d'un pourcentage:

Diviser le nombre en pourcentage par 100 et multiplier par 255 pour obtenir la valeur décimale. Convertir le nombre décimal en hexadécimal .

Par exemple, pour 50%, 50/100 * 255 = 127. En utilisant le lien nous obtenons la valeur hexadécimale 7F.

Source:

Si vous voulez ajouter 20% ou 30% de transparence, vous devez pré-Pend deux caractères au code hexadécimal, comme CC.

Note

android:background="#CCFF0088" en XML

où CC est la valeur alpha, FF est le facteur rouge, 00 est le facteur vert et 88 est le facteur bleu.

Une partie du code d'opacité:

Valeurs Hex Opacité

100% — FF
95% — F2
90% — E6
85% — D9
80% — CC
75% — BF
70% — B3
65% — A6
60% — 99
55% — 8C
50% — 80
45% — 73
40% — 66
35% — 59
30% — 4D
25% — 40
20% — 33
15% — 26
10% — 1A
5%  — 0D
0% —  00

Vous pouvez également l'opacité définir par programme comme:

yourView.getBackground().setAlpha(127);

Définir l'opacité entre 0 (entièrement transparent) à 255 (complètement opaque). La 127,5 est exactement 50%.

Vous pouvez créer un niveau de transparence en utilisant la formule donnée. Si vous voulez moitié transparent:

 16 |128          Where 128 is the half of 256.
    |8 -0         So it means 80 is half transparent.

Et pour la transparence de 25%:

16 |64            Where 64 is the quarter of 256.
   |4 -0          So it means 40 is quarter transparent.

Utilisez le code ci-dessous pour le noir:

<color name="black">#000000</color>

Maintenant, si vous voulez utiliser l'opacité, vous pouvez utiliser le code ci-dessous:

<color name="black">#99000000</color>

Et ci-dessous pour le code d'opacité:

100% - FF

95% - F2

90% - E6

85% - D9

80% - CC

75% - BF

70% - B3

65% - A6

60% - 99

55% - 8C

50% - 80

45% - 73

40% - 66

35% - 59

30% - 4D

25% - 40

20% - 33

15% - 26

10% - 1A

5% - 0D

0% - 00

en utilisant ce code de couleur transparente

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

Il existe déjà une constante prédéfinie. Utilisez Color.TRANSPARENT.

Il est déjà intégré dans Android transparent: R.color.transparent. http://developer.android.com/reference/android/R.color .html # transparent

Mais je pense que vous voudrez peut-être faire l'arrière-plan de l'image que vous placez dans la transparence WebView, par exemple, avec un PNG transparent, plutôt que l'arrière-plan ImageView. Si l'image réelle est pas du tout voir à travers l'arrière-plan puis ImageView ne peut être vu à travers elle.

Dans le cas où vous voulez dans le code, il suffit:

mComponentName.setBackgroundColor(Color.parseColor("#80000000"));

Ou, comme alternative, analyser l'ID de ressource avec le code suivant:

  mComponentName.setBackgroundColor(getResources().getColor(android.R.color.transparent));

Pour ceux qui sont encore confrontés à ce problème, vous pouvez essayer
element.getBackground().setAlpha(0);

Dans votre fichier XML, définissez un attribut "Alpha"

comme

android:alpha="0.0" // for transparent
android:alpha="1.0" // for opaque

Vous pouvez donner une valeur comprise entre 0,0 à 1,0 en décimal pour appliquer la transparence requise. Par exemple, la transparence 0,5 est idéal pour composant désactivé

Essayez ce code:)

Il est un code hexadécimal totalement transparent - "# 00000000"

Une autre façon simple:

mComponentName.setBackgroundResource(android.R.color.transparent);

Une autre option de travail, je suis tombé est de mettre android:background="@null"

Utilisez les éléments suivants pour la transparence complète:

#00000000

Quand j'ai essayé avec # 80000000 Je suis un charbonné transparent que je ne veux pas. Essayez de changer les deux premiers chiffres; il contrôle le niveau de transparence, comme

#00000000
#10000000
#20000000
#30000000

Vous pouvez également utiliser View.setAlpha(float) pour changer la visibilité avec précision.

0 serait transparent, une entièrement visible. ;)

Dans Android studio, il est très simple d'ajuster la couleur et l'opacité à l'aide d'un outil intégré:

Essayez d'utiliser le code suivant. Il vous aidera en tout ou plus.

  1. Un fichier .xml conçu pour utiliser ce code pour définir la couleur de fond:

    android:background="#000000"
    

    ou

    android:background="#FFFFFF"
    

    L'image est ici

    Ou vous pouvez le configurer par programme ainsi.

  2. Vous pouvez également utiliser ce code programme:

    image.setBackgroundDrawable(getResources().getDrawable(
        R.drawable.llabackground));
    
  3. En outre ce code pour définir la couleur d'arrière-plan et programme:

    image.setBackgroundColor(Color.parseColor("#FFFFFF"));
    
  4. Ce code pour le même programme:

    image.setBackgroundColor(getResources().getColor(Color.WHITE));
    

La couleur dépend de votre choix de la couleur que vous souhaitez utiliser pour la transparence. La plupart du temps utiliser une couleur blanche ou #FFFFFF.

En ce qui concerne R.drawable.llabackground: Cette ligne de code est pour votre style de l'arrière-plan, comme quelque chose de spécial ou différent pour votre but. Vous pouvez également l'utiliser.

Si vous utilisez une image XML drawable vous pouvez le rendre transparent comme le montre l'image ci-dessous, ou vous pouvez utiliser un code couleur:

<color name="black">#99000000</color> 

ImageView.setBackground(R.drawable.my_background);

ImageView.setBackgroundResource(R.color.colorPrimary);

ImageView.getImageAlpha();

ImageView.setAlpha(125); // transparency

Essayez ceci:

#aa000000

Pour la transparence 000000 = noir, vous pouvez modifier ces six chiffres pour la couleur que vous voulez.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top