我正在创建一个简单的按钮,如下所示:
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"
/>
,则按钮提升效果不起作用。有什么方法可以用背景图像达到提升效果吗?
答案 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将图像保留在按钮的中央,效果将默认为操作系统。