android 开发 ExpandableListView的使用介绍
来源:互联网 发布:Javascript string 编辑:程序博客网 时间:2024/05/21 17:51
android开发过程中难免会遇见一些比较复杂的布局,二维list的使用时经常的事情,这里就介绍一种非常好用的二维ExpandableListView,主要是他的adapter的使用非常的重要,直接上代码。
- private class MyExpandableListViewAdapter extends BaseExpandableListAdapter {
- // 获得某个父项的某个子项
- @Override
- public Object getChild(int parentPos, int childPos) {
- return dataset.get(parentList[parentPos]).get(childPos);
- }
- // 获得父项的数量
- @Override
- public int getGroupCount() {
- return dataset.size();
- }
- // 获得某个父项的子项数目
- @Override
- public int getChildrenCount(int parentPos) {
- return dataset.get(parentList[parentPos]).size();
- }
- // 获得某个父项
- @Override
- public Object getGroup(int parentPos) {
- return dataset.get(parentList[parentPos]);
- }
- // 获得某个父项的id
- @Override
- public long getGroupId(int parentPos) {
- return parentPos;
- }
- // 获得某个父项的某个子项的id
- @Override
- public long getChildId(int parentPos, int childPos) {
- return childPos;
- }
- // 按函数的名字来理解应该是是否具有稳定的id,这个方法目前一直都是返回false,没有去改动过
- @Override
- public boolean hasStableIds() {
- return false;
- }
- // 获得父项显示的view
- @Override
- public View getGroupView(int parentPos, boolean b, View view, ViewGroup viewGroup) {
- return view;
- }
- // 获得子项显示的view
- @Override
- public View getChildView(int parentPos, int childPos, boolean b, View view, ViewGroup viewGroup) {
- return view;
- }
- // 子项是否可选中,如果需要设置子项的点击事件,需要返回true
- @Override
- public boolean isChildSelectable(int i, int i1) {
- return false;
- }
- }
上面的是个方法直接对应把该实现的代码放进去
需要注意的是
1:在原来的这个布局中默认是不打开的,实现了下面这个方法就可以实现展示出来的数据就是展开后的数据,一下两个方法在一起使用就可以实现了
//覆盖原有收起展开事件convertView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { //点击事件 }});
for (int i = 0; i < orderStoreBeanList.size(); i++) { orderActivityExpandableListView.expandGroup(i);}2:里面的两个重要参数,一个父类的位置,一个子类的位置
public Object getChild(int groupPosition, int childPosition)3:去掉自带的小箭头
orderActivityExpandableListView.setGroupIndicator(null);其他的就和平时写的adapter时候一样该怎么用就怎么用就好了,这是第一次写博客,先试一下怎么样,希望大家多多指教,如果不清楚的还可以去看原文
阅读全文
0 0
- android 开发 ExpandableListView的使用介绍
- ExpandableListview的使用介绍
- Android ExpandableListView的使用
- Android ExpandableListView的使用
- Android ExpandableListView的使用
- Android ExpandableListView的使用
- Android ExpandableListView的使用
- Android ExpandableListView的使用
- Android ExpandableListView的使用
- android-ExpandableListView的使用
- Android中ExpandableListView的使用
- Android中ExpandableListView的使用
- Android中ExpandableListView的使用
- Android中ExpandableListView的使用
- Android中ExpandableListView的使用
- android之 ExpandableListView的使用
- Android中ExpandableListView的使用
- Android中ExpandableListView的使用
- Cacti 二次开发————Cacti页面内容添加
- 进程管理API之__task_pid_nr_ns
- 深度学习,从不会到完全不会
- 【Scikit-Learn 中文文档】线性和二次判别分析
- HSSF,XSSF和SXSSF的区别
- android 开发 ExpandableListView的使用介绍
- day4-jacascript-函数及对象
- Android Zygote(zaɪɡoʊt)启动流程学习笔记记录
- 解决VERSION 1.7 OF THE JVM IS NOT SUITABLE FOR THIS PRODUCT.
- 阿里云证书服务使用教程(下篇)
- Redis数据过期和淘汰策略详解
- mongodb 安装记录 2017年11月21日
- 关于 shell 脚本编程的10 个最佳实践
- PHP+redis(转载整两篇博客,很不错很基础)