TextView在白色背景下的50%不透明度

6

我想将一个TextView的背景设置为50%透明度的白色(#ffffff)。
我尝试使用android:alpha=0.5,但它也会使文字变得50%透明。

我需要将白色背景设置为50%的透明度。
我找到了一个教程(链接),但没有完全理解。

请提供任何参考资料。 谢谢。

4个回答

22

但是你是如何计算的呢?我从你的链接中没有理解。你的答案是正确的,但需要理解。你能详细说明一下吗? - Sandip Armal Patil
1
这些值是十六进制值。你可以将每个值分别看作A、R、G、B值的独立值。十六进制数字是基于16的,16的一半是8。因此,这里的8指的是十六进制中的8。 - taylorstine
那么黑色在50%不透明度下的值是多少(#0000000)?我只是想弄清楚我的知识。 - Sandip Armal Patil
1
将十六进制值转换为整数值,然后除以255得到百分比。因此,最大的十六进制值(FF=255)减半后为80=128,因此您的完整答案将是#80000000。 - taylorstine

3
在你提到的教程中,你会发现颜色值比你指定的多了两个数字。你指定的是#FFFFFF(6个数字),而教程指定的是#CCFF0000(8个数字)。添加的前两个数字(CC)代表alpha通道。
因此,在你的情况下,尝试使用类似#AAFFFFFF这样的值。

1
“50%不透明度的白色背景用于文本视图:”
    <TextView
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:alpha=".5"
     android:gravity="center"
     android:text="50% opacity"
     android:textColor="@color/white" />  

     OR

  <TextView
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:gravity="center"
     android:text="50% opacity"
     android:textColor="#80FFFFFF" />               

0

你试过了吗:

textView.getBackground().setAlpha(range);

//其中0 < range <= 255,0表示透明,255表示不透明


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接