我正在尝试按照位于http://www.dibbus.com/2011/02/gradient-buttons-for-android/的教程,但是我没有得到预期的结果。一切都很好,但是当我运行它时,我得到一个没有任何颜色,渐变甚至边框的按钮(所以我看到的实际上只是按钮文本)。按钮本身响应事件确定。
为了与尽可能多的设备兼容我使用的是android:minSdkVersion =“3”,这可能是个问题吗?
这是我的布局xml文件的一部分:
<TableRow>
<Button
android:id="@+id/button_calculate"
android:background="@drawable/copy_btn"
android:layout_column="1"
android:layout_span="2"
android:padding="5dp" />
</TableRow>
这是copy_btn.xml,位于drawables内。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" >
<shape>
<solid
android:color="#70c656" />
<stroke
android:width="1dp"
android:color="#53933f" />
<corners
android:radius="3dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
<item>
<shape>
<gradient
android:startColor="#70c656"
android:endColor="#53933f"
android:angle="270" />
<stroke
android:width="1dp"
android:color="#53933f" />
<corners
android:radius="4dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
</selector>
由于
答案 0 :(得分:0)
如果您将android:layout_height =“wrap_content”android:layout_width =“wrap_content”添加到Android Manifest中的按钮,它的工作正常。 minSdkVersion对此无动于衷,因为大多数时候它们都是向后兼容的。
什么“(实际上我所看到的只是按钮文字)”是什么意思?当你没有使用android:text属性时,你怎么能看到一个按钮文本?您的应用程序中有另一个按钮或您从代码中设置文本。请检查一下。