禁用按下的按下背景颜色

时间:2013-08-14 09:24:34

标签: android button colors state pressed

我的按钮只包含字母。每按一次,它都有黑色背景。 如何禁用黑色背景?我不想改变颜色,我想禁用按下状态。

2 个答案:

答案 0 :(得分:2)

你需要在drawable文件夹下创建选择器,并在那里设置颜色或图像以适应按钮的不同状态。

我已经为您创建了一个示例应用程序,并且正在粘贴代码段:

button_selector.xml的代码,其中包含您需要放在drawable文件夹下的按钮的选择器代码:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/no_box_selector" android:state_pressed="true"></item>
    <item android:drawable="@drawable/no_box"></item>

</selector>

您需要在drawable-hdpi或任何可绘制文件夹中放入no_box_selector和no_box png

activity_main.xml的代码,它将是您目前只包含一个按钮的主xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/relRingtone"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#000000"
    android:orientation="vertical" >

    <Button
        android:id="@+id/btn2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:background="@drawable/button_selector"
        android:padding="5dp"
        android:text="Click Me"
        android:textColor="#FFF"
        android:textSize="20sp"
        android:textStyle="bold" />

</RelativeLayout>

尝试实施这些内容,如果您需要任何进一步的帮助,请告诉我.......

一切顺利!!!

答案 1 :(得分:0)

在drarable文件夹中创建一个选择器。它看起来像

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

将此选择器设置为按钮的背景。现在,您可以更改按钮的所有状态的选择器。