【发布时间】:2014-05-16 17:11:42
【问题描述】:
我正在设置我在按钮中用作背景的图像的不透明度。但是当我设置按钮的不透明度时,它也会改变文本的不透明度。我尝试以编程方式设置按钮文本。但仍然无法正常工作。如何在不影响文字颜色不透明度的情况下设置不透明度?
代码-
hist = (Button) findViewById(R.id.hist);
hist.setText("HISTORY");
Xml-
<Button
android:id="@+id/hist"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/bttn"
android:alpha=".6"
android:gravity="center"
android:textColor="#FFFFFF"
android:textStyle="bold"
android:textSize="@dimen/btxt"/>
提前致谢。
【问题讨论】:
-
您必须更改图像 (bttn) 上的 alpha,而不是按钮本身。
-
在很多方面。如果是 png,请使用图形编辑器。如果它是一个 xml 可绘制对象,它应该有一个 android:alpha 属性。或者通过代码来完成,正如@Deacoy 在他的回答中显示的那样(适用于图像和 xml 可绘制对象)
-
@KlingKlang 如何更改按钮的透明度而不影响按钮文本的透明度?我将 button:alpha 设置为 0.25,但它也会影响按钮文本颜色。如何防止这种行为?
-
@ChinmaySarupria
button:alpha影响整个对象。您只想绘制背景。因此,准备一个 0.25 的 alpha 图像或可绘制对象并将其分配给按钮背景。就这么简单。 -
@KlingKlang 我遵循了下面的答案,并且通过 Java 代码有效,它不会影响文本颜色。
标签: android button text opacity