为什么在 Android 中按下时按钮图像没有改变?

Why button image does not change when it pressed in Android?

我是 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 文件的代码,位于 drawable 文件夹。 (没有默认的可绘制文件夹,我创建了它

<?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 变为 "You clicked the button" 但 plus.png 图像始终作为按钮图像存在。按

时它不会改变

我该如何解决这个问题?

你应该改变

android:background="@drawable/plus"

android:background="@drawable/custom"

设置背景为selectorcustom.xml 是您的选择器。