回答:
アルファチャネルの色が80%になるようにします。たとえば、赤の使用の場合#CCFF0000
:
<TextView
...
android:background="#CCFF0000" />
例でCC
は、はの16進数です255 * 0.8 = 204
。最初の2桁の16進数はアルファチャネル用であることに注意してください。形式は#AARRGGBB
で、AA
はアルファチャネル、RR
は赤のチャネル、GG
は緑のチャネル、BB
は青のチャネルです。
20%の透明度は80%の不透明度を意味すると想定しています。逆の意味の場合は、代わりにを16進数でCC
使用33
し255 * 0.2 = 51
ます。
アルファ透明度値の適切な値を計算するには、次の手順に従います。
100-20=80
)2^8=256
)で、範囲は0〜255です。255 * 0.8 = 204
。必要に応じて、最も近い整数に丸めます。0xCC
。FF0000
場合はになりますCCFF0000
。android:background="#CCFFFFFF"
。
黒には以下のコードを使用します。
<color name="black">#000000</color>
不透明度を使用したい場合は、以下のコードを使用できます。
<color name="black">#99000000</color> <!-- 99 is for alpha and others pairs zero's are for R G B -->
そして、以下の不透明度コード:すべての不透明度レベルはこちら
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
透過性のためのコードを常に忘れる場合は、以下のリンクを参照する必要があり、透過性コードに関することを覚えておく必要はありません:-
https://github.com/duggu-hcd/TransparentColorCode
textviewHeader.setTextColor(Color.parseColor(ColorTransparentUtils.transparentColor(R.color.border_color,10)));
色の定義の最初の2文字を変更して、色の不透明度を管理できます。
#99 000000
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
あなたは次のようなことを試すことができます:
textView.getBackground().setAlpha(51);
ここでは、不透明度を0(完全に透明)〜255(完全に不透明)に設定できます。51はまさに20%です。
textView
変数はなのでnull
。
myImage.setAlpha(0.5f);
アルファをビュー自体に適用しますが、私の回答で示すものはビューの背景ドローアブルに適用されています。
3つのビューを取得しました。最初のビューではフル(アルファなし)カラーを設定し、2番目のビューではハーフ(0.5アルファ)カラーを設定し、3番目のビューでは明るいカラー(0.2アルファ)を設定しました。
以下のコードを使用して、任意の色を設定し、アルファで色を取得できます。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools = "http://schemas.android.com/tools"
android:layout_width = "match_parent"
android:layout_height = "match_parent"
android:gravity = "center"
android:orientation = "vertical"
tools:context = "com.example.temp.MainActivity" >
<View
android:id = "@+id/fullColorView"
android:layout_width = "100dip"
android:layout_height = "100dip" />
<View
android:id = "@+id/halfalphaColorView"
android:layout_width = "100dip"
android:layout_height = "100dip"
android:layout_marginTop = "20dip" />
<View
android:id = "@+id/alphaColorView"
android:layout_width = "100dip"
android:layout_height = "100dip"
android:layout_marginTop = "20dip" />
</LinearLayout>
public class MainActivity extends Activity {
private View fullColorView, halfalphaColorView, alphaColorView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fullColorView = (View)findViewById(R.id.fullColorView);
halfalphaColorView = (View)findViewById(R.id.halfalphaColorView);
alphaColorView = (View)findViewById(R.id.alphaColorView);
fullColorView.setBackgroundColor(Color.BLUE);
halfalphaColorView.setBackgroundColor(getColorWithAlpha(Color.BLUE, 0.5f));
alphaColorView.setBackgroundColor(getColorWithAlpha(Color.BLUE, 0.2f));
}
private int getColorWithAlpha(int color, float ratio) {
int newColor = 0;
int alpha = Math.round(Color.alpha(color) * ratio);
int r = Color.red(color);
int g = Color.green(color);
int b = Color.blue(color);
newColor = Color.argb(alpha, r, g, b);
return newColor;
}
}
Kotlinバージョン:
private fun getColorWithAlpha(color: Int, ratio: Float): Int {
return Color.argb(Math.round(Color.alpha(color) * ratio), Color.red(color), Color.green(color), Color.blue(color))
}
できた
逆に透明にすることもできます。
ホワイトカラーコード-FFFFFF
白20%-#33 FFFFFF
20%— 33
70%ホワイト-#B3 FFFFFF
70%— B3
100%から0%までのすべての16進値
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%— 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
100%から0%アルファまでのすべての16進値。以下に説明するアルファ値で任意の色を設定できます。例:#FAFFFFFF(ARRGGBB)
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
alpha
double値を取るXML値があります。
API 11+
範囲は0f
〜を1f
含むため、0f
透明1f
で不透明です。
android:alpha="0.0"
見えない
android:alpha="0.5"
シースルー
android:alpha="1.0"
完全に見える
それはそれが機能する方法です。
下記の人気度を見る
android:alpha="0.38"
XML
android:color="#3983BE00" // Partially transparent sky blue
動的に
btn.getBackground()。setAlpha(128); // 50%透明
tv_name.getBackground()。setAlpha(128); // 50%透明
Where the INT ranges from 0 (fully transparent) to 255 (fully opaque).
<TextView
style="@style/TextAppearance.AppCompat.Caption"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:alpha="0.38"
android:gravity="start"
android:textStyle="bold"
tools:text="1994|EN" />
android:alpha = "0.38"
Text View alpha property set 0.38 to your textView visibility is faid
私は知っています、それは非常に古い質問です。
色の値を使用したい場合は、その短いバージョンをで使用することもできます#ARGB
。A
アルファチャネルの値はどこにありますか。
白色の場合、次の透明度の値があります。
#FFFF - 0%
#EFFF - 6,7%
#DFFF - 13,3%
#CFFF - 20,0%
#BFFF - 26,7%
#AFFF - 33,3%
#9FFF - 40,0%
#FFF8 - 46,7%
#7FFF - 53,3%
#6FFF - 60,0%
#5FFF - 66,7%
#4FFF - 73,3%
#3FFF - 80,0%
#2FFF - 86,7%
#1FFF - 93,3%
#0FFF - 100,0%
したがってTextView
、透明度を20%にするために次の行を追加できます。
<TextView
android:background="#CFFF"
... />
これは、アルファチャネルの16進値を計算するための@Aromeroの回答からのプログラムによる解決策です。:)
public static void main(String[] args) throws Exception {
final Scanner scanner = new Scanner(System.in);
int transPerc;
float fPerc;
System.out.println("Enter the transparency percentage without % symbol:");
while((transPerc=scanner.nextInt())>=0 && transPerc <=100){
fPerc = (float) transPerc / 100;
transPerc = Math.round(255 * fPerc);
System.out.println("= " + Integer.toHexString(transPerc));
System.out.print("another one please : ");
}
scanner.close();
}