5

我为一个按钮制作了自己的背景,我希望按钮在单击时发生变化。我找到了这段代码:

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

但是我在哪里使用它?我尝试将其粘贴到主 XML 文件中,但它不起作用。

4

2 回答 2

3

您将其保存为文件res/drawable夹中的 xml 文件。如果此文件夹不存在,请创建它。在示例中,我使用的文件名是selector_drawable_name.xml

在此之后,每当您使用 Button 并希望它具有单击效果时,请将其背景设置为此可绘制对象:

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Button1"
    android:background="@drawable/selector_drawable_name" />

结果:当按钮状态变为 时state_pressed,选中的背景为@drawable/boutonnpousse。默认(在所有其他状态下)将为@drawable/boutonn.

于 2013-09-01T18:26:03.020 回答
1

顺便说一句...您可以在以下站点中使用状态列表 XML 生成器:

http://myandroidsolutions.blogspot.co.il/p/android-state-list-generator-v2.html

只需检查您要添加的状态并在底部的相应字段中分配可绘制文件名。生成器将使用正确的状态以正确的顺序生成 XML 元素。

于 2013-09-01T19:56:16.237 回答