J'utilise une vue Web dans laquelle j'ajoute une vue d'image. Comment définir l'arrière-plan de cette vue d'image sur transparent?
J'ai essayé ceci:
mImageview.setBackgroundResource(R.color.trans);
Où trans
→ <color name="trans">#00000000 </color>
.
Dans votre XML, définissez l'attribut Background
sur une couleur, une nuance White(#FFFFFF)
ou Black(#000000)
. Si vous voulez de la transparence, il suffit de mettre 80 avant le code de hachage actuel:
#80000000
Cela changera la couleur de votre choix en une couleur transparente .. :)
Vous pouvez définir l’arrière-plan transparent de toute mise en page, de toute vue ou de tout composant en ajoutant ce code en XML:
Android:background="@Android:color/transparent"
En plus de ce que Harshad a mentionné:
Deux caractères hexadécimaux peuvent être ajoutés à n’importe quel code de couleur hexadécimal. Les deux premiers caractères d'un code de couleur hexadécimal à 8 chiffres représentent son opacité sous Android.
Les deux caractères hexadécimaux peuvent aller de 00 à FF. Par exemple,
De cette façon, vous pouvez changer n'importe quelle couleur en n'importe quel niveau de transparence.
Pour trouver le préfixe hexadécimal à partir d'un pourcentage:
Divisez le nombre en pourcentage par 100 et multipliez par 255 pour obtenir la valeur décimale. Convertissez le nombre décimal en hexadécimal ici .
Par exemple, pour 50%, 50/100 * 255 = 127. En utilisant le lien, nous obtenons la valeur hexadécimale 7F.
Source: Android: comment créer un fond transparent ou opaque
Si vous souhaitez ajouter une transparence de 20% ou 30%, vous devez ajouter deux caractères supplémentaires au code hexadécimal, comme CC.
Android:background="#CCFF0088"
en XML
où CC est la valeur alpha, FF le facteur rouge, 00 le facteur vert et 88 le facteur bleu.
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 définir l'opacité par programme comme:
yourView.getBackground().setAlpha(127);
Définissez une opacité comprise entre 0 (totalement transparent) et 255 (complètement opaque). Le 127,5 est exactement 50%.
Vous pouvez créer n’importe quel niveau de transparence en utilisant la formule donnée. Si vous voulez la moitié transparente:
16 |128 Where 128 is the half of 256.
|8 -0 So it means 80 is half transparent.
Et pour une 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% - J9
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
utiliser ce code pour la couleur transparente
Android:background="@Android:color/transparent"
Il existe déjà une constante prédéfinie. Utilisez Color.TRANSPARENT
.
Il existe déjà un transparent intégré à Android: R.color.transparent. http://developer.Android.com/reference/Android/R.color.html#transparent
Mais je pense que vous voudrez peut-être rendre l'arrière-plan de l'image que vous placez dans WebView transparent, par exemple, avec un fichier PNG transparent, plutôt que l'arrière-plan ImageView. Si l'image réelle n'est pas du tout transparente, l'arrière-plan ImageView ne peut pas être vu.
Si vous le voulez en code, il suffit de:
mComponentName.setBackgroundColor(Color.parseColor("#80000000"));
Vous pouvez également analyser l'ID de la ressource avec le code suivant:
mComponentName.setBackgroundColor(getResources().getColor(Android.R.color.transparent));
Essayez ce code:)
C'est un code hexadécimal totalement transparent - "# 00000000"
Pour ceux qui sont toujours confrontés à ce problème, vous pouvez essayer cecielement.getBackground().setAlpha(0);
Dans votre fichier XML, définissez un attribut "Alpha"
tel que
Android:alpha="0.0" // for transparent
Android:alpha="1.0" // for opaque
Vous pouvez donner n'importe quelle valeur entre 0.0 et 1.0 en décimal pour appliquer la transparence requise. Par exemple, la transparence 0,5 est idéale pour les composants désactivés
Une autre option de travail que je suis tombé sur est de définir Android:background="@null"
Un moyen encore plus simple:
mComponentName.setBackgroundResource(Android.R.color.transparent);
Utilisez les éléments suivants pour une transparence complète:
#00000000
Lorsque j'ai essayé avec # 80000000, j'ai obtenu une superposition transparente noire 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 modifier la visibilité avec précision.
0 serait transparent, 1 entièrement visible. ;)
Essayez d'utiliser le code suivant. Cela vous aidera dans son intégralité ou plus.
Un fichier .xml conçu pour utiliser ce code pour définir la couleur d'arrière-plan:
Android:background="#000000"
ou
Android:background="#FFFFFF"
Ou vous pouvez également le définir par programme.
Aussi, vous pouvez utiliser ce code par programme:
image.setBackgroundDrawable(getResources().getDrawable(
R.drawable.llabackground));
De plus, ce code pour définir la couleur de fond aussi bien par programme:
image.setBackgroundColor(Color.parseColor("#FFFFFF"));
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 transparent. Utilisez principalement une couleur blanche ou #FFFFFF.
En ce qui concerne R.drawable.llabackground
: Cette ligne de code correspond à votre style d'arrière-plan, comme un élément spécial ou différent pour vos besoins. Vous pouvez également l'utiliser.
ImageView.setBackground(R.drawable.my_background);
ImageView.setBackgroundResource(R.color.colorPrimary);
ImageView.getImageAlpha();
ImageView.setAlpha(125); // transparency
Essaye ça:
#aa000000
Pour la transparence 000000 = noir, vous pouvez modifier ces six chiffres pour la couleur souhaitée.