我是Android新手,正在设置xml文件。有没有一种方法可以在单击按钮时以一种“单击”的感觉来更改按钮的颜色,然后返回到其原始颜色而无需更改边框的颜色?
我正在使用日食。
谢谢

最佳答案

首先,您需要在Drawable文件夹中制作一些xml文件:

btn_clicked.xml:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
   android:shape="rectangle">
   <corners android:radius="20dp" />
   <solid android:color="#ff0000" />
   <stroke
       android:width="1dp"
       android:color="#fff" />
</shape>


btn_normal.xml:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
   <corners android:radius="20dp" />
   <solid android:color="#00ff00" />
   <stroke
      android:width="1dp"
      android:color="#fff" />
</shape>


name_btn.xml:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
   <item android:drawable="@drawable/btn_clicked" android:state_pressed="true"/>
   <item android:drawable="@drawable/btn_normal"/>
</selector>


然后像这样使用它:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent" android:layout_height="match_parent">
        <Button android:layout_width="140dp" android:layout_height="40dp"
            android:background="@drawable/cancel_btn" />
</RelativeLayout>

10-06 07:21
查看更多