我有一个布局,我正在使用一种颜色,我的不透明度为0.2。我在该布局中有一个textview,但是当我指定布局的不透明度较低时,Textview文本也会消失。为什么会这样?我只想淡化背景色而不是textview的文字。
//布局代码
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:alpha="0.2"
android:background="@drawable/background_rounded_black"
android:padding="@dimen/dp10">
<TextView
android:id="@+id/txtNews"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:alpha="1"
android:text="djfhwhfirhfiohrhvfuhvfjvbv vknfjvnfjv fv vefjkhvfhvv hvufevhfuievefv ivfhiefhvfe ifvjioefv"
android:textColor="@android:color/white"
android:textSize="@dimen/dp15" />
<TextView
android:id="@+id/txtTime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@id/txtNews"
android:layout_marginTop="@dimen/dp10"
android:alpha="1"
android:drawableLeft="@drawable/clock_news"
android:text="12 hrs ago"
android:textColor="@android:color/white"
android:textSize="@dimen/dp15" />
现在看起来如何http://prntscr.com/gbxi87
答案 0 :(得分:0)
您为alpha
的父View
设置了RelativeLayout
标记。您应该为要为其添加透明度的alpha
完全设置View
。或者,如果您只想为background
添加透明度,则应使用透明色作为View
的背景。
你还说你的布局中有一个TextView
,就像我看到的那样是两个!
答案 1 :(得分:0)
您必须更改背景上的alpha,而不是整个元素
删除
android:alpha="0.2"
改变
的不透明度android:background="@drawable/background_rounded_black"
最简单的方法是在background_rounded_black_opacity.xml
文件夹中创建新的drawable
(只需复制drawable / background_rounded_black),然后将背景颜色更改为您需要的颜色。
所以如果background_rounded_black看起来像
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#000000"/>
<stroke android:width="3dip" android:color="#B1BCBE" />
<corners android:radius="10dip"/>
</shape>
您可以添加0.2不透明度,例如在所有颜色上添加33,因此在您的情况下它将是
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#33000000"/>
<stroke android:width="3dip" android:color="#33B1BCBE" />
<corners android:radius="10dip"/>
</shape>
答案 2 :(得分:0)
我建议你将alpha颜色设置为textview的背景,它会正常工作。
您为该窗口小部件设置了不透明度,因此它设置为整个textview窗口小部件的不透明度,而您只需将不透明度设置为textView的背景色。
您可以使用8位哈希码定义颜色。
例如#90FFFFFF这里首先将两位数设置为不透明度。
了解更多信息,您可以看到此链接设置不透明度: