1、 添加数据
添加Group数据 String GroupName
添加child数据 GroupId,String childName
布局里面的其他数据相应的设置值就可以了
–数组存储数据:只能在固定数据的大小的情况下进行数据的更新,只能对数据的值进行修改。
List等存储数据:List属于可扩展的数据类型,可以对ExpandableList数据进行,添加、删除、对数据的值进行修改。
2、 如何使列表只展开一列
设置所有的组中只能展开一列
//设置只展开一组
elv.setOnGroupExpandListener(new ExpandableListView.OnGroupExpandListener() {
@Override
public void onGroupExpand(int groupPosition) {
int count = elv.getExpandableListAdapter().getGroupCount();
for(int j = 0; j < count; j++){
if(j != groupPosition){
elv.collapseGroup(j);
}
}
}
});
3、 更新数据
更新数据:对存储空间的数据进行修改之后,使用
adapter.notifyDataSetChanged();
更新adapater中的数据
Demo:使用List存储数据,点击按钮能够进行添加组(空组)
空组的子项处理:
在getChildView()方法和getChildViewCount中加入判断
if (child.size() > groupPosition && child.get(groupPosition) != null) {}
不符合条件的基础上分别返回null和0
demo练习
demo介绍:
ExpandableListView,通过按钮新增组,长按组(选择功能 重命名或删除组)
demo效果:
demo下载地址:
http://download.csdn.net/detail/u012391876/9609852