如何为android中的按钮对象启用/禁用drawable?

时间:2018-06-18 20:41:36

标签: java android xml

我有一个边框,我为按钮单击时应该启用该按钮。

<Button
        android:id="@+id/imageView_red"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="15dp"
        android:paddingRight="15dp"
        android:src="@drawable/border" />

我的问题是如何启用/禁用此drawable? java是否为此提供了解决方案?

我试着查看这篇文章,但它似乎没有回答这个问题

Android - border for button

1 个答案:

答案 0 :(得分:1)

您需要做的就是将选择器drawable放在按钮中,就像这样

<Button
 android:id="@+id/button1"
 android:background="@drawable/selector_xml_name"
 android:layout_width="200dp"
 android:layout_height="126dp"
 android:text="Hello" />

像这样的抽象

<?xml version="1.0" encoding="utf-8"?>
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
    <shape>
        <stroke android:width="10dp"/>
    </shape>
</item>
<item android:state_pressed="false">
    <shape>
        <stroke android:width="0dp"/>
    </shape>
</item>