如何删除Android ExpandableListView中某个group item的child item

 我来答
堂岛论_
2017-04-15 · TA获得超过1130个赞
知道小有建树答主
回答量:974
采纳率:0%
帮助的人:431万
展开全部
检查你的数据定义,这种做法是非常危险的。我们要确保每个group item都有一个对应的child list,这个list为空,代表该group item没有子条目。可是你的定义呢?如果删除了"second",那么“thrid”到底是group1,还是group2的child呢?从代码中细究:
private String [] groupStr={"第一组","第二组","第三组"};
private String [] childStr={"first","second","third"};
private List<Map<String, String>> groupData = new ArrayList<Map<String, String>>();
private List<Map<String, String>> childData = new ArrayList<Map<String, String>>();

@Override
public int getChildrenCount(int arg0) {
// 这里的arg0,代表groupPosition,
// 所以,如果你删除了某个child元素,必然导致你的childData和groupData数量不对等。
// 当adapter试图为group2调用这个方法时,崩溃。
return childData.get(arg0).size();
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式