单击时更改按钮背景(xml)

时间:2016-10-11 10:33:54

标签: java android-studio button buttonclick

我希望当用户点击按钮时,它的背景会稍微改变以获得点击它的效果。

我的活动XML文件的片段:

<Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/btnParse"
        android:text="@string/get_games"
        android:textColor="#FFF5F2"
        android:textSize="20sp"
        android:layout_marginBottom="93dp"
        android:layout_alignParentBottom="true"
        android:background="@drawable/buttonshape"
        android:textStyle="italic"
        android:textAlignment="center"
        android:layout_marginLeft="30dp"
        android:layout_marginRight="30dp"
        android:layout_alignParentStart="true"
        android:layout_alignParentEnd="true" />

按钮形状XML:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <corners
        android:radius="100dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    <gradient
        android:angle="45"
        android:centerX="0"
        android:centerColor="#A80C16"
        android:startColor="#E8E8E8"
        android:endColor="#FF0F0F"
        android:type="linear"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    <padding
        android:left="42dp"
        android:top="0dp"
        android:right="50dp"
        android:bottom="0dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    <size
        android:width="270dp"
        android:height="60dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    <stroke
        android:width="3dp"
        android:color="#878787"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content" />
</shape>

我怎样才能达到这个效果?我试图实现我在类似的stackoverflow问题页面上找到的但是它不起作用。我在Android开发方面很新,所以我可能不了解一些基础知识......

1 个答案:

答案 0 :(得分:-1)