web-dev-qa-db-ja.com

Android(6文字)の色について

Androidで色がどのように機能するかを理解しようとしています。この色をLinearLayoutの背景として設定し、透明度のある背景を灰色にします。

<gradient Android:startColor="#b4555555" Android:endColor="#b4555555"
 Android:angle="270.0" />

最後の2文字(55)を削除すると、単色になり、透明度が失われます。これについての説明を見ることができるページを探していましたが、見つけることができませんでした。

199
Thiago

6桁の16進数を指定すると、RGB(赤、緑、青の各値に対して2桁の16進数)を意味します。

8桁の16進数を指定すると、ARGB(アルファ、赤、緑、青の各値に対して2桁の16進数)になります。

したがって、最後の55を削除すると、A = B4、R = 55、G = 55、B = 55(ほとんど透明な灰色)からR = B4、G = 55、B = 55(完全な非-透明な薄暗いピンキー)。

サポートされている形式については、 "Color" documentation を参照してください。

164
Jon Skeet

Androidは16進数のARGB値を使用し、#AARRGGBBとしてフォーマットされます。最初の文字のペアであるAAは、アルファチャネルを表します。 10進数の不透明度の値を16進数の値に変換する必要があります。手順は次のとおりです。

アルファ16進値プロセス

  1. 不透明度を10進数値として取得し、255倍します。したがって、不透明度が50%のブロックがある場合、10進数値は.5になります。例:.5 x 255 = 127.5
  2. 分数は16進数に変換されないため、数値を最も近い整数に切り上げまたは切り捨てる必要があります。たとえば、127.5は128に切り上げられます。 55.25は55に切り捨てます。
  3. http://www.binaryhexconverter.com/decimal-to-hex-converter などの10進数から16進数へのコンバーターに10進数値を入力し、値を変換します。
  4. 単一の値のみを取得する場合は、先頭にゼロを付けます。たとえば、5%の不透明度を取得しようとしてこのプロセスを実行している場合、Dの16進値になります。その前にゼロを追加して、0Dとして表示されます。

それがアルファチャンネル値を見つける方法です。私はあなたのために値のリストをまとめる自由を取りました。楽しい!

16進数の不透明度値

  • 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
1153
BlondeFurious

@BlondeFuriousからの答えを離れて、100%から0%アルファまでの各16進値を取得するJavaコードがあります。

for (double i = 1; i >= 0; i -= 0.01) {
    i = Math.round(i * 100) / 100.0d;
    int alpha = (int) Math.round(i * 255);
    String hex = Integer.toHexString(alpha).toUpperCase();
    if (hex.length() == 1)
        hex = "0" + hex;
    int percent = (int) (i * 100);
    System.out.println(String.format("%d%% — %s", percent, hex));
}

出力:

100% — FF
99% — FC
98% — FA
97% — F7
96% — F5
95% — F2
94% — F0
93% — ED
92% — EB
91% — E8
90% — E6
89% — E3
88% — E0
87% — DE
86% — DB
85% — D9
84% — D6
83% — D4
82% — D1
81% — CF
80% — CC
79% — C9
78% — C7
77% — C4
76% — C2
75% — BF
74% — BD
73% — BA
72% — B8
71% — B5
70% — B3
69% — B0
68% — AD
67% — AB
66% — A8
65% — A6
64% — A3
63% — A1
62% — 9E
61% — 9C
60% — 99
59% — 96
58% — 94
57% — 91
56% — 8F
55% — 8C
54% — 8A
53% — 87
52% — 85
51% — 82
50% — 80
49% — 7D
48% — 7A
47% — 78
46% — 75
45% — 73
44% — 70
43% — 6E
42% — 6B
41% — 69
40% — 66
39% — 63
38% — 61
37% — 5E
36% — 5C
35% — 59
34% — 57
33% — 54
32% — 52
31% — 4F
30% — 4D
29% — 4A
28% — 47
27% — 45
26% — 42
25% — 40
24% — 3D
23% — 3B
22% — 38
21% — 36
20% — 33
19% — 30
18% — 2E
17% — 2B
16% — 29
15% — 26
14% — 24
13% — 21
12% — 1F
11% — 1C
10% — 1A
9% — 17
8% — 14
7% — 12
6% — 0F
5% — 0D
4% — 0A
3% — 08
2% — 05
1% — 03
0% — 00

JavaScriptバージョンは以下のとおりです。

var text = document.getElementById('text');
for (var i = 1; i >= 0; i -= 0.01) {
    i = Math.round(i * 100) / 100;
    var alpha = Math.round(i * 255);
    var hex = (alpha + 0x10000).toString(16).substr(-2).toUpperCase();
    var perc = Math.round(i * 100);
    text.innerHTML += perc + "% — " + hex + " (" + alpha + ")</br>";
}
<div id="text"></div>

また、Googleの「16進数への数値」だけで、「数値」は0から255までの任意の値です。

175
Jared Rummler

Android Material Design

これらは、テキストの色の不透明度レベルを設定するための変換です。

  • 100%:FF
  • 87%:DE
  • 70%:B3
  • 54%:8A
  • 50%:80
  • 38%:61
  • 12%:1階

明るい背景に暗いテキスト

enter image description here

  • プライマリテキスト:DE000000
  • セカンダリテキスト:8A000000
  • 無効なテキスト、ヒントテキスト、およびアイコン:61000000
  • 仕切り:1F000000

暗い背景に白いテキスト

enter image description here

  • プライマリテキスト:FFFFFFFF
  • セカンダリテキスト:B3FFFFFF
  • 無効なテキスト、ヒントテキスト、およびアイコン:80FFFFFF
  • 仕切り:1FFFFFFF

こちらもご覧ください

33
Suragch

Androidでは、色はRGBまたはARGBとして指定できます。

http://en.wikipedia.org/wiki/ARGB

RGBでは、すべての色(赤、緑、青)に2つの文字があり、ARGBでは、アルファチャネルに2つの追加の文字があります。

したがって、8文字の場合はARGBで、最初の2文字はアルファチャネルを指定します。先頭の2文字を削除すると、RGBのみになります(単色、アルファ/透明度なし)。 Javaソースコードで色を指定する場合は、次を使用する必要があります。

int Color.argb (int alpha, int red, int green, int blue)

alpha  Alpha component [0..255] of the color
red    Red component [0..255] of the color
green  Green component [0..255] of the color
blue   Blue component [0..255] of the color

参照:argb

16
alibi

8桁の16進数のカラー値はARGB(アルファ、赤、緑、青)の表現ですが、6桁の値は100%の不透明度(完全に不透明)を想定し、RGB値のみを定義します。したがって、これを完全に不透明にするには、#FF555555を使用するか、または単に#555555を使用します。 2桁の16進値はそれぞれ1バイトで、0〜255の値を表します。

7
kcoppock