问题

布局中有图片和文字,希望按下时,同时有press状态,并且同时能有select状态。

实现

需要注意的是,子view需要调用这3个属性,使其不获得焦点,所有状态都给布局LinearLayout,所有的view都需加上对应的selector。

android:clickable="false"        android:focusable="false"        android:focusableInTouchMode="false"

布局文件

//布局<LinearLayout    android:id="@+id/ll_item"    android:layout_width="246dp"    android:layout_height="72dp"    android:gravity="center"    android:background="@drawable/btn_aqua"    android:orientation="horizontal" >    <ImageButton        android:id="@+id/ib_icon"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:background="@drawable/btn_front_aqua"        android:clickable="false"        android:focusable="false"        android:focusableInTouchMode="false" />    <TextView        android:id="@+id/tv_name"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:clickable="false"        android:focusable="false"        android:layout_marginLeft="17dp"        android:focusableInTouchMode="false"        android:textColor="@drawable/textselectoraqua"        android:textSize="@dimen/text_size31" />LinearLayout>

selector

// btn_aqua.xml<selector xmlns:android="http://schemas.android.com/apk/res/android" >        <item android:drawable="@drawable/camera_bottom_button_aqua_p" android:state_pressed="true"/>    <item android:drawable="@drawable/camera_bottom_button_f" android:state_selected="true"/>    <item android:drawable="@color/Transparent"/>selector>//btn_front_aqua.xml<selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:drawable="@drawable/camera_icon_front_p" android:state_pressed="true"/>    <item android:drawable="@drawable/camera_icon_front_aqua_f" android:state_selected="true"/>    <item android:drawable="@drawable/camera_icon_front_n"/>selector>//textselectoraqua.xml<selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:state_pressed="true" android:color="@color/black">item>    <item android:state_selected="true" android:color="@color/themeaqua">item>    <item android:color="@color/white">item>selector>

在代码里,只需要对布局R.id.ll_item进行点击监听和setSelected就行了,图片和文字自然就和布局一样,表现出同样的状态。

更多相关文章

  1. 浅谈android的selector,背景选择器
  2. Android(安卓)开机图片/文字/动画 修改
  3. Android中shape定义控件的使用
  4. Qt for Android(安卓)调用android原生接口分享图片或文字
  5. 浅谈android的selector背景选择器
  6. android位图颜色模式的问题
  7. 《Android/OPhone开发完全讲义》连载(5):Notification与状态栏信息
  8. 浅谈android的selector,背景选择器
  9. android Glide简单使用

随机推荐

  1. android SQLite使用SQLiteOpenHelper类对
  2. 深夜扒一扒Android的发展史
  3. Android中Service和Activity相互通信示例
  4. Android音频和震动的基本实现
  5. Android入门进阶教程(16)-ActivityThead
  6. Android多分辨率适配-长度单位和转换计算
  7. 在BeagleBoard XM 开发板上运行Android
  8. 绗旇锛歓ygote鍜孲ystemServer杩涚▼鍚
  9. Android(安卓)解压zip文件(支持中文)
  10. Android(安卓)数据传输方式 WIFI 蓝牙 US