Ich versuche zu verstehen, wie Farben in Android funktionieren. Ich habe diese Farbe als Hintergrund festgelegt LinearLayout
und erhalte ein graues Hintergrundbild mit etwas Transparenz:
<gradient android:startColor="#b4555555" android:endColor="#b4555555"
android:angle="270.0" />
Wenn ich die letzten beiden Zeichen (55) entferne, erhalte ich eine Volltonfarbe, wodurch die Transparenz verloren geht. Ich habe versucht, eine Seite zu finden, auf der ich Erklärungen dazu finden kann, aber ich konnte sie nicht finden.
quelle
<<
Seite).Android verwendet hexadezimale ARGB-Werte, die als #AARRGGBB formatiert sind. Das erste Buchstabenpaar, das AA, repräsentiert den Alphakanal. Sie müssen Ihre dezimalen Deckkraftwerte in einen hexadezimalen Wert konvertieren. Hier sind die Schritte:
Alpha-Hex-Wert-Prozess
So finden Sie den Alpha-Kanal-Wert. Ich habe mir erlaubt, eine Werteliste für Sie zusammenzustellen. Genießen!
Hex-Opazitätswerte
quelle
echo "obase=16; ibase=10; (255*12+50)/100" | bc
. (+50 - für das Runden auf den nächsten Wert ist es tatsächlich 100/2)Nach der Antwort von @BlondeFurious finden Sie hier einen Java-Code, mit dem Sie jeden Hexadezimalwert von 100% auf 0% Alpha ermitteln können:
Ausgabe:
Eine JavaScript-Version finden Sie unten:
Code-Snippet anzeigen
Sie können auch einfach "number to hex" von Google eingeben, wobei "number" ein beliebiger Wert zwischen 0 und 255 ist.
quelle
Android Material Design
Dies sind die Konvertierungen zum Festlegen der Deckkraft für Textfarben.
Dunkler Text auf hellem Hintergrund
DE000000
8A000000
61000000
1F000000
Weißer Text auf dunklem Hintergrund
FFFFFFFF
B3FFFFFF
80FFFFFF
1FFFFFFF
Siehe auch
quelle
Unter Android können Farben als RGB oder ARGB angegeben werden.
http://en.wikipedia.org/wiki/ARGB
In RGB haben Sie zwei Zeichen für jede Farbe (rot, grün, blau) und in ARGB haben Sie zwei zusätzliche Zeichen für den Alphakanal.
Wenn Sie also 8 Zeichen haben, ist es ARGB, wobei die ersten beiden Zeichen den Alphakanal angeben. Wenn Sie die beiden führenden Zeichen entfernen, handelt es sich nur um RGB (Volltonfarben, kein Alpha / Transparenz). Wenn Sie eine Farbe in Ihrem Java-Quellcode angeben möchten, müssen Sie Folgendes verwenden:
Referenz: argb
quelle
Ein 8-stelliger Hex-Farbwert ist eine Darstellung von ARGB (Alpha, Rot, Grün, Blau), während ein 6-stelliger Wert nur eine Deckkraft von 100% (vollständig undurchsichtig) annimmt und nur die RGB-Werte definiert. Um dies vollständig undurchsichtig zu machen, können Sie entweder # FF555555 oder nur # 555555 verwenden. Jeder zweistellige Hex-Wert ist ein Byte und repräsentiert Werte von 0 bis 255.
quelle
Bei der neuen Chromversion (möglicherweise 67.0.3396.62) kann die CSS-Hex-Farbe diese Modellanzeige verwenden.
z.B:
cc ist Deckkraft, aber altes Chrom unterstützt diesen Mod nicht
quelle