Comment faire un fond de 20% transparent sur Android
Comment puis-je rendre le fond d'une Textview
environ 20% transparent (complètement transparent), où il y a une couleur en arrière-plan (c'est à dire blanc)?
- Faut regarder ce stackoverflow.com/questions/15852122/hex-transparency-in-colors
Vous devez vous connecter pour publier un commentaire.
Faire de la couleur ont 80% dans le canal alpha. Par exemple, pour l'utilisation rouge
#CCFF0000
:Dans l'exemple,
CC
est le nombre hexadécimal pour255 * 0.8 = 204
. Notez que les deux premiers chiffres hexadécimaux sont pour le canal alpha. Le format est#AARRGGBB
, oùAA
est le canal alpha,RR
est le canal rouge,GG
est le canal vert etBB
est le canal bleu.Je suis en supposant que 20% transparent signifie 80% opaque. Si vous parliez de l'autre manière, au lieu de
CC
utilisation33
qui est de l'hexadécimal pour255 * 0.2 = 51
.Afin de calculer la valeur correcte pour une valeur de transparence alpha, vous pouvez suivre cette procédure:
100-20=80
)2^8=256
), ce qui signifie que la gamme va de 0 à 255.255 * 0.8 = 204
. Arrondir à l'entier le plus proche en cas de besoin.0xCC
.FF0000
, vous aurezCCFF0000
.Vous pouvez prendre un coup d'oeil à la Android documentation pour les couleurs.
Utiliser le code ci-dessous pour le noir:
Maintenant, si je veux utiliser l'opacité ensuite, vous pouvez utiliser le code ci-dessous:
Et ci-dessous pour l'opacité de code: et tous les niveau d'opacité ici
Hex Valeurs D'Opacité
Si vous toujours d'oublier ce code de transparence alors vous devez avoir pour voir le lien ci-dessous et ne vous inquiétez pas à propos de se rappeler quoi que ce soit concernant le code transparent :-
https://github.com/duggu-hcd/TransparentColorCode
Vous pouvez gérer l'opacité de couleur en changeant les 2 premiers caractères dans la définition de la couleur:
#99000000
Utiliser une couleur avec une valeur alpha comme
#33------
, et le définir comme arrière-plan de votre editText à l'aide de l'attribut XMLandroid:background=" "
.255 * 0.2 = 51 → dans l'hex 33
Vous pouvez essayer de faire quelque chose comme:
Ici, vous pouvez définir l'opacité entre 0 (complètement transparent) à 255 (complètement opaque). Le 51 est exactement la 20% que vous voulez.
textView
variable estnull
.myImage.setAlpha(0.5f);
s'applique l'alpha à la Vue elle-même, mais ce que je montre dans ma réponse est appliqué à la Vue de l'arrière-plan dessiné.Dans Android Studio est un outil intégré pour ajuster la couleur et alpha/valeur d'opacité:
J'ai pris trois points de Vue. Dans la première vue j'ai mis plein (pas d'alpha) de la couleur, sur le second point de vue j'ai mis la moitié (0,5 alpha) de la couleur, et sur le troisième point de vue, je jeu de lumière de couleur (alpha 0.2).
Vous pouvez définir n'importe quelle couleur et en couleur avec alpha en utilisant le code ci-dessous:
Fichier activity_main.xml
Fichier MainActivity.java
Kotlin version:
Fait
Tous les hex de la valeur de 100% à 0% alpha, Vous pouvez définir n'importe quelle couleur avec alpha valeurs mentionnées ci-dessous. e.g #FAFFFFFF(ARRGGBB)
Il y a une valeur XML
alpha
qui prend les valeurs doubles.Depuis
API 11+
la gamme est de0f
à1f
(inclus),0f
d'être transparent et1f
être opaque:android:alpha="0.0"
c'est invisibleandroid:alpha="0.5"
voir-à traversandroid:alpha="1.0"
pleine et visibleC'est la façon dont il fonctionne.
Nous pouvons rendre transparent de cette façon aussi.
Blanc code couleur - FFFFFF
70% de blanc - #B3FFFFFF.
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
Alpha varie entre 0(transparent) et 1(opaque) dans l'API Android 11+
Maintenant Android Studio 3.3 et version ultérieure fournir une fonction intégrée de fonction pour changer un Alpha valeur de la couleur,
Suffit de cliquer sur une couleur dans Android studio éditeur et de fournir d' valeur Alpha dans
percentage
.Pour plus d'informations, voir l'image ci-dessous
Voir la Popularité ci-dessous textView à l'aide de cette
XML
Dynamiquement
btn.getBackground().setAlpha(128); //50% transparent
tv_name.getBackground().setAlpha(128); //50% transparent
android:alpha="0.38"
Voici une solution de programmation de @Aromero's réponse à calculer la valeur hexadécimale pour le canal alpha. 🙂
Essayez ce code 🙂
Son complètement transparent code hex - "#00000000"