属性:
cacheColorHint 高光缓冲色 低版本的 listview 按下会出现颜色 一般都会设置为 透明色
listSelector 选中条目的颜色
如果不设置 默认为系统提供的状态选择颜色(可能为黄色)
如果不设置为 状态选择器,直接给个color值 的时候 你点击子条目后 该子条目会变成你设置的颜色
如果设置为 状态选择器 为 pressed状态 后 你点击子条目 按下 和未按下的颜色 就是你选择器中所设置的 颜色
xml中设置的属性
android:cacheColorHint="#00000000" android:listSelector="@drawable/gridview_selector_color"drawable中的状态选择器
color颜色值<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@color/transparent" android:state_pressed="false"/> <item android:drawable="@color/gridview_click_color" android:state_pressed="true"/> </selector>
<color name="transparent">#00000000</color> <color name="gridview_click_color">#e3c9c5c5</color>
Listview 移动到指定的位置:
GridView:
一般布局中可能会用到的属性有: verticalSpacing-- 垂直间距 horizontalSpacing--水平间距
ListView GridView 如果想实现 子条目点击 内容或者显示文字样式的改变
需要在 adapter中 自己写个方法 例如:
private int selection;
public void setSelectionPosition(int selectionPosition){
this.selectionPosition = selectionPosition;
notifyDataSetChanged();
}
然后在getView方法中 进行判断:
if(position == selectionPosition){
// 选中改变后的样式
}else{
// 未选中的样式
}
同样的道理 改变数据源 刷新适配器:
这里的 T 可以替换为自己的 Bean对象
private List<T> dataList; // 这个集合的名字 要与getView中 所用的集合名字相同
public void setNewDataList(List<T> newDataList){
this.dataList = newDataList;
notifyDataSetChanged();
}