您的位置:首页 > 其它

关于ListView、GridView的一些处理

2016-08-24 13:32 309 查看

属性:

cacheColorHint 高光缓冲色 低版本的 listview 按下会出现颜色 一般都会设置为 透明色

listSelector 选中条目的颜色

如果不设置 默认为系统提供的状态选择颜色(可能为黄色)

如果不设置为 状态选择器,直接给个color值 的时候 你点击子条目后 该子条目会变成你设置的颜色

如果设置为 状态选择器 为 pressed状态 后 你点击子条目 按下 和未按下的颜色 就是你选择器中所设置的 颜色

xml中设置的属性

android:cacheColorHint="#00000000"
android:listSelector="@drawable/gridview_selector_color"

drawable中的状态选择器

<?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颜色值

<color name="transparent">#00000000</color>
<color name="gridview_click_color">#e3c9c5c5</color>



Listview 移动到指定的位置:

listview .smoothScrollToPosition(position); 可让listview 平滑到指定的position

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();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐