Mars视频笔记——ExpandableListActivity
16lz
2022-01-09
ExpandableListActivity使用 使用方法(可以和ListActivity进行对比) 创建一个Activity类继承ExpandableListActvity 三个layout 主布局 ( 注意这里2个id都是android内置的 不是+id) 包含<ExpandableListView> 注意其中android:id="@id/android:list" 还有一个android:drawSelectorOnTop="false"(选中时是否遮盖文字) <TextView android:id="@id/android:empty"> 当无数据时 一级目录布局 二级目录布局(条目item样式) 创建Adapter 将simpleExpandableListAdapter对象设置给当前ExpandableListActivity setListAdapter(adapter); SimpleExpandableListAdapter使用 为ExpandableListActivity提供数据 //定义List 为一级条目提供数据 List<Map<String, String>> groups=new ArrayList<Map<String, String>>(); 需要几个条目 生成几个Map对象 Map<String, String> m1=new HashMap<String, String>(); m1.put(group, Group1); m2.put(group, Group2); groups.add(m1); groups.add(m2);
//定义List 设置二级子条目 一个子条目一个List 一个项 一个Map 方法同上 建List( child1 child2)和Map( child:child1Data1; child:child1Data2)
//定义一个List 存储所有二级条目数据 *List<List<Map<String, String>>> childs = new ArrayListM<List<Map<String, String>>>(); childs.add( child1); childs.add( child2);
//生成一个SimpleExpandableListAdapter对象 new SimpleExpandableListAdapter(...); 参数包括 (context上下文对象,一级条目List对象,一级条目布局, new String[]{" groups"})指定一级条目数据的key,new int[]{R.id.groupTo}指定一级条目数据显示的控件id, 二级条目的数据 childs,二级条目布局,二级条目数据key(child),二级条目控件id}
最终目录结构 Group1 child1Data1 child1Data2 Group2 child2Data
//定义List 设置二级子条目 一个子条目一个List 一个项 一个Map 方法同上 建List( child1 child2)和Map( child:child1Data1; child:child1Data2)
//定义一个List 存储所有二级条目数据 *List<List<Map<String, String>>> childs = new ArrayListM<List<Map<String, String>>>(); childs.add( child1); childs.add( child2);
//生成一个SimpleExpandableListAdapter对象 new SimpleExpandableListAdapter(...); 参数包括 (context上下文对象,一级条目List对象,一级条目布局, new String[]{" groups"})指定一级条目数据的key,new int[]{R.id.groupTo}指定一级条目数据显示的控件id, 二级条目的数据 childs,二级条目布局,二级条目数据key(child),二级条目控件id}
最终目录结构 Group1 child1Data1 child1Data2 Group2 child2Data
更多相关文章
- android ViewModelProviders被弃用解决方案
- android 团队开发技巧1 - activity 启动
- Android(安卓)TabHost的使用 .
- Android中Intent的各种常见作用。
- Android(安卓)中的高效数据结构
- Android(安卓)Bundle类
- Android(安卓)短信数据库详细总结分析
- mybatisplus的坑 insert标签insert into select无参数问题的解决
- python起点网月票榜字体反爬案例