通过选择器更改按钮的背景

时间:2013-10-05 08:54:57

标签: android button selector

我有一个按钮,我想要点击按钮,按钮改变了图像。我觉得一切都还可以但是当点击按钮时,背景按钮改变了一会儿(我选择了这个),然后背景按钮是第一个背景颜色:(我的问题是什么?

contact_selector.xml:

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

activity_test.xml:

 <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<FrameLayout 
    android:id="@+id/frame"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/white"
    android:layout_above="@id/btn"></FrameLayout>
<Button 
    android:id="@+id/btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/contact_selector"
    android:layout_alignParentBottom="true"/>
 </RelativeLayout>

...谢谢

1 个答案:

答案 0 :(得分:0)

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

    <item android:drawable="@drawable/contactpress" android:state_pressed="true"></item>
    <item android:drawable="@drawable/contactpress" android:state_focused="true"></item>
    <item android:drawable="@drawable/contact" android:state_enabled="true" android:state_focused="false" android:state_pressed="false"></item>
    <item android:drawable="@drawable/contactpress" android:state_enabled="false"></item>

</selector>