附加背景图像时按钮凸起效果不起作用

时间:2016-04-19 11:25:18

标签: android button

我正在创建一个简单的按钮,如下所示:

with open...

现在,当我尝试在背景中添加任何图像时,如:<Button android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/edSearch" android:id="@+id/btnSearch" android:layout_marginTop="30dp" android:drawableTop="@drawable/ic_action_search" android:textSize="16sp" android:text="Search" android:background="@color/md_green_500" android:textColor="#fff" /> ,则按钮提升效果不起作用。有什么方法可以用背景图像达到提升效果吗?

1 个答案:

答案 0 :(得分:0)

您可以为此创建一个可绘制的选择器。您需要为此提供3个不同的图像,以便按钮可以根据状态切换这些图像。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="false"
    android:state_pressed="false"
    android:drawable="@drawable/image_normal" />
<item android:state_focused="false"
    android:state_pressed="true" 
    android:drawable="@drawable/image_pressed" />
<item android:state_focused="true"
    android:state_pressed="false" 
    android:drawable="@drawable/image_focused" />
</selector>

此外,您可以使用ImageButton将图像保留在按钮的中央,效果将默认为操作系统。