在Android中按下时为什么按钮图像不会改变?

时间:2015-04-21 11:17:55

标签: android android-xml android-button android-selector

我是Android的新手,我创建了简单的应用程序。当点击按钮textview应该改变该功能工作正常但按钮图像在按下时不会改变。

这里是 fragment_main.xml

中的按钮
   <Button
        android:id="@+id/btnCheck"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/plus"
        android:onClick="changeText" />

此处可绘制文件夹 custom.xml 文件的代码。 (没有默认的可绘制文件夹,我创建了它

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/plus_selected" android:state_pressed="true"/>
    <item android:drawable="@drawable/plus_highlighted" android:state_focused="true"/>
    <item android:drawable="@drawable/plus"/>

</selector>

plus_selected.png,plus_highlighted.png和plus.png 文件位于 drawable-hdpi 文件夹

这是我的java代码

public void changeText(View v) {

    TextView tvText = (TextView) findViewById(R.id.tvDisplay);
    tvText.setText("you cliked the button");

}

当点击按钮textview变为&#34;你点击了按钮&#34;但 plus.png 图像始终作为按钮图像存在。按

时不会改变

如何解决此问题?

1 个答案:

答案 0 :(得分:5)

你应该改变

android:background="@drawable/plus"

android:background="@drawable/custom"

将背景设为selectorcustom.xml是您案例中的选择器。