一、结构
public abstract class SimpleExpandableListAdapter extends BaseExpandableListAdapter
java.lang.Object
android.widget.BaseExpandableListAdapter
android.widget.SimpleExpandableListAdapter
二、概述
一个使用 Map 存储组元素和子元素的静态数据,使用 XML 资源文件定义组元素和子元素 View 如何显示的简单适配器。你可以区分指定组元素返回的数据是 List<Map> 类型。在 ArrayList 中的每个实体对应 ExpandalbeList 中的一个组。实体中的 Map 列表包含了组下的每行数据。你也可以指定一个 XML 文件来定义用于在组元素的 View 的显示。此时 Map 中的键值将与指定的 View(XML 中定义的 view id) 对应起来。子元素的处理情况类似。注意当可折叠的深度若不只 1 层,返回的数据将被指定为 List 类型。首个 List 对应子元素中所代表的组,第二个 List 对应孙子元素在子元素组中的位置。 Map 亦将支持这样的特殊元素。(子元素嵌套组元素的情 。
三、构造函数
public SimpleExpandableListAdapter(Contextcontext,List<? extends Map<String, ?>> groupData, int groupLayout,String[]groupFrom, int[] groupTo,List<? extends List<? extends Map<String, ?>>> childData, int childLayout,String[]childFrom, int[] childTo)
构造函数
参数
context 与 SimpleExpandableListAdapter 关联的 ExpandableListView 的上下文。
groupData 一个 Maps 列表 (List) 。集合中的每个字典项与可折叠列表中的每个组元素一致。字典项提供了组元素包含的所有数据,并包含所有在 "groupFrom" 中指定的记录。
groupLayout 显示组元素的资源文件。该资源文件定义了如何显示组元素。该布局文件必须至少包括 groupTo 中所定义的 View 。 ( 即 groupTo 中的 View id 数组必须都在该布局文件中找到 )
groupFrom 一个键值列表。对应与组相关联的 Map 中的键值。
grouptTo 组 View 应当显示 groupFrom 参数中的所有列数据。这些数据应当都用 TextView 来显示。列表中的前 N 个 View 从前 N 个 groupFrom 参数获得列元素的数据。
childData 一个 Map 列表的列表。外部列表中的每个实体对应一个组 ( 按照组的位置编号 ) 。在内部列表的每个实体对应某个组的子元素 ( 按照子元素的位置编号 ) 。该 Map 对应了子元素的数据。 ( 按照 childFrom 数组中的值编号 ) 。该 Map 包含了每个子元素的数据,并且应当包括所有在 childFrom 中指定的实体。
childLayout 显示子元素的资源文件。该资源文件定义了如何显示子元素。布局文件至少应该包括所有在 childTo 中定义的 View 。 ( 即 childTo 中的 view id 数组必须都在该布局文件中找到 )
childFrom 定义显示子元素的列名。该列名与 childData 中的子元素属性(字典键值)对应。
childTo 子 View 应当显示 childFrom 参数中的所有列数据。这些数据应当都用 TextView 来显示。列表中的前 N 个 View 从前 N 个 childFrom 参数获得列元素的数据。
public SimpleExpandableListAdapter (Context context, List<? extends Map<String, ?>> groupData, int expandedGroupLayout, int collapsedGroupLayout, String[] groupFrom, int[] groupTo, List<? extends List<? extends Map<String, ?>>> childData, int childLayout, String[] childFrom, int[] childTo)
构造函数。
参数
context 与 SimpleExpandableListAdapter 关联的 ExpandableListView 的上下文。
groupData 一个 Maps 列表 (List) 。集合中的每个字典项与可折叠列表中的每个组元素一致。字典项提供了组元素包含的所有数据,并包含所有在 "groupFrom" 中指定的记录。
expandedGroupLayout 定义组展开时的 View 的 XML 资源布局。该布局文件应当至少包括所有在 groupTo 中所定义的 View 。 ( 即 groupTo 中的 View id 数组必须都在该布局文件中找到 )
collapasedGroupLayout 定义组折叠时的 View 的 XML 资源布局。该布局文件应当至少包括所有在 groupTo 中所定义的 View 。 ( 即 groupTo 中的 View id 数组必须都在该布局文件中找到 )
groupFrom 一个键值列表。对应与组相关联的 Map 中的键值。
grouptTo 组 View 应当显示 groupFrom 参数中的所有列数据。这些数据应当都用 TextView 来显示。列表中的前 N 个 View 从前 N 个 groupFrom 参数获得列元素的数据。
childData 一个 Map 列表的列表。外部列表中的每个实体对应一个组 ( 按照组的位置编号 ) 。在内部列表的每个实体对应某个组的子元素 ( 按照子元素的位置编号 ) 。该 Map 对应了子元素的数据。 ( 按照 childFrom 数组中的值编号 ) 。该 Map 包含了每个子元素的数据,并且应当包括所有在 childFrom 中指定的实体。
childLayout 显示子元素的资源文件。该资源文件定义了如何显示子元素。布局文件至少应该包括所有在 childTo 中定义的 View 。 ( 即 childTo 中的 view id 数组必须都在该布局文件中找到 )
childFrom 定义显示子元素的列名。该列名与 childData 中的子元素属性(字典键值)对应。
childTo 子 View 应当显示 childFrom 参数中的所有列数据。这些数据应当都用 TextView 来显示。列表中的前 N 个 View 从前 N 个 childFrom 参数获得列元素的数据。
public SimpleExpandableListAdapter(Contextcontext,List<? extends Map<String, ?>> groupData, int expandedGroupLayout, int collapsedGroupLayout,String[]groupFrom, int[] groupTo,List<? extends List<? extends Map<String, ?>>> childData, int childLayout, int lastChildLayout,String[]childFrom, int[] childTo)
构造函数。
参数
context 与 SimpleExpandableListAdapter 关联的 ExpandableListView 的上下文。
groupData 一个 Maps 列表 (List) 。集合中的每个字典项与可折叠列表中的每个组元素一致。字典项提供了组元素包含的所有数据,并包含所有在 "groupFrom" 中指定的记录。
expandedGroupLayout 定义组展开时的 View 的 XML 资源布局。该布局文件应当至少包括所有在 groupTo 中所定义的 View 。 ( 即 groupTo 中的 View id 数组必须都在该布局文件中找到 )
collapasedGroupLayout 定义组折叠时的 View 的 XML 资源布局。该布局文件应当至少包括所有在 groupTo 中所定义的 View 。 ( 即 groupTo 中的 View id 数组必须都在该布局文件中找到 )
groupFrom 一个键值列表。对应与组相关联的 Map 中的键值。
grouptTo 组 View 应当显示 groupFrom 参数中的所有列数据。这些数据应当都用 TextView 来显示。列表中的前 N 个 View 从前 N 个 groupFrom 参数获得列元素的数据。
childData 一个 Map 列表的列表。外部列表中的每个实体对应一个组 ( 按照组的位置编号 ) 。在内部列表的每个实体对应某个组的子元素 ( 按照子元素的位置编号 ) 。该 Map 对应了子元素的数据。 ( 按照 childFrom 数组中的值编号 ) 。该 Map 包含了每个子元素的数据,并且应当包括所有在 childFrom 中指定的实体。
childLayout 显示子元素的资源文件。该资源文件定义了如何显示子元素。布局文件至少应该包括所有在 childTo 中定义的 View 。 ( 即 childTo 中的 view id 数组必须都在该布局文件中找到 )
lastChildLayout 定义每组中最后一个子元素的 View 资源布局情况。该布局文件应当至少包括所有在 childTo 中所定义的 View 。 ( 即 childTo 中的 View id 数组必须都在该布局文件中找到 )
childFrom 定义显示子元素的列名。该列名与 childData 中的子元素属性(字典键值)对应。
childTo 子 View 应当显示 childFrom 参数中的所有列数据。这些数据应当都用 TextView 来显示。列表中的前 N 个 View 从前 N 个 childFrom 参数获得列元素的数据。