web-dev-qa-db-ja.com

Androidの16進数の色は8桁の場合があります。どのように?#FFFFFFと#FFFFFF00の違いは何ですか?

例では、Androidが#FF191919として行われます。8桁の16進数を意味します。ただし、6桁の数字のみである必要があります。 6桁の数字を8桁の数字に変換したいのですが、どうすればいいですか?#424242を8桁の数字の色に変換しますか?詳細を教えてください。

76
Vinod

余分な2桁は、色の透明度またはアルファチャネルを定義するために使用されます。

Androidは ARGB形式 (または、例で使用するAARRGGBB)を使用します

(Android固有の)詳細については、色をご覧ください documentation

100
Veger

最初の2文字はアルファ(透明度)値を表し、FFは完全に表示されます。これはaRGBとして知られています。

42
shanethehat

8桁の16進数は [〜#〜] argb [〜#〜] 色です。通常と同じ [〜#〜] rgb [〜#〜] ですが、追加のアルファチャネルが提供されます。

RGBの#RRGGBBは、ARGBの#00RRGGBBと同じです。 Color.argb もご覧ください。

14
Andy

アルパレベルで定義する8桁の色

16進数の色をrgbの6つの値のペアとして定義するすべてを抽出してみましょう。

赤の最初の2桁、緑の2番目の2桁、青の3番目の2桁のアルファレベルをARGBとして8桁で定義する場合は、アルファの1番目の2桁の値を定義し、残りはRGB用です

6
Pratik

8桁Android HExはaRGBと呼ばれます。aRGB値は通常8桁の16進数を使用して表現され、16進数の各ペアはアルファ、赤、緑、青チャンネルの値を表し、たとえば、80FFFF00は50.2%の不透明(非乗算)黄色を表します。128が最大値255(FF hex)の約50.2%であるため、80 hex値(10進数で128)は50.2%アルファ値を表します。 80FFFF00の値を解読し続けるために、最初のFFは赤が持つことができる最大値を表し、2番目のFFは前のものと同様ですが緑を表します;最後の00は青が持つことができる最小値を表します(事実上、青はありません)。緑は黄色を生成します。アルファを使用しない場合、これを6桁のRRGGBBに短縮できます。これが、アルファを最上位ビットに入れるために選択された理由です。コンテキストに応じて、0xまたは番号記号(#)[ 1]は16進数の前に置かれます。

4
Terry Miller