如何做这类事件
当我按下“首选项”按钮时,我只需要更改箭头的背景颜色。
我做的是当我放的时候
TextView的android:background="@null"
无法显示带蓝色背景的整个视图。
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:background="@drawable/btn_selector"
android:clickable="true" >
<ImageView
android:id="@+id/back_arrow"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:src="@drawable/ic_ab_back_holo_dark" />
<TextView
android:id="@+id/settings_title"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:background="@null"
android:layout_toRightOf="@id/back_arrow"
android:gravity="center_vertical"
android:text="@string/settings_title"
android:textColor="@color/white"
android:textSize="22sp" />
</LinearLayout>
答案 0 :(得分:0)
使用状态列表drawable作为ImageView的背景(或者如果你愿意,可以改为按钮)。然后你可以设置按钮的背景处于不同的状态(例如,按下时)。
答案 1 :(得分:0)
只需正常设置textview,黑色背景(#000000)并让imageButton将src设置为可绘制选择器:
<ImageButton android:id="@+id/imageButton" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:background="@null" android:gravity="center_horizontal"
android:paddingLeft="50dp" android:paddingTop="25dp" android:src="@drawable/button_selector"/>
选择器:
<?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/button_pressed"/>
<item android:state_pressed="false"
android:drawable="@drawable/button_rested"/>
<item android:state_enabled="false"
android:drawable="@drawable/button_disabled"/>
</selector>