Android 之可收缩展开列表 ExpandableList 在 Android 的 app 包中,有这么一个类,这个类继承自 Activity ,它叫 ExpandableListActivity 。顾名思义,从它的名字可以看出该类是一种可扩展性的列表 List , 我们这里理解成可伸缩的列表, 也就是通过继承 ExpandableListActivity 可以实现列表的可展开/ 收缩的功能。本文我们主要介绍这种列表的显示是如何实现的,在 ListActivity 的使用中, 我们知道一旦继承了 ListActivity , 该类就意味这具备了 List 的功能, 同样的, 我们将一个类继承了 ExpandableListActivity ,就可以直接调用该类本身的 ExpandableList 对象, 并直接赋予一个自定义的适配器 setListAdapter(adapter); ,因此,整个实现的重心放在如何设计这个适配器上面,以下是适配器的一个举例。 public class mExpandableListAdapter extends BaseExpandableListAdapter { // 父列表数据 private String[] groups = {“随时随地”,“即兴时代”,“ ”, }; // 子列表数据 private String[][] children = {{“即兴”}, {“随时随地”,“即兴时代”}, {“随时随地”,“即兴时代”,“ ”}, }; ***@Override public Object getChild(int groupPosition, int childPosition) { return children[groupPosition][childPosition]; } ***@Override public long getChildId(int groupPosition, int childPosition) { return childPosition; } ***@Override public int getChildrenCount(int groupPosition) { return children[groupPosition].length; } // 取子列表中的某一项的 View ***@Override public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent) { TextView textView = getGenericView(); (getChild(groupPosition, childPosition).toString()); return textView; } ***@Override public Object getGroup(int groupPosition) { return groups[groupPosition]; } ***@Override public int getGroupCount() { return ; }
android可展开的列表 来自淘豆网www.taodocs.com转载请标明出处.