我有一个类( ExpandableListDataClass ),它扩展了BaseExpandableListAdapter
我从Activity
调用 ExpandableListDataClass ,如下所示;
ExpandableListDataClass expandableListDataClass = new ExpandableListDataClass(this, categories);
categoryExpandableListView.setAdapter(expandableListDataClass);
类别 是一个String数组。这意味着 ExpandableListDataClass 的groupCount取决于 类别 。
最糟糕的是,我正在加载GridView
以扩展ExpandableListView
中的群组项。那些GridView
根据类别显示不同的数据。
如果我在getChildView()
中使用以下代码,那就完全正常了
if(getGroup(groupPosition).toString().equals("ebooks")){
expandableListInsideGridView.setAdapter(eBooksImageAdapterForExpandableList);
}else if(getGroup(groupPosition).toString().equals("ebrochures")){
expandableListInsideGridView.setAdapter(eBrochuresImageAdapterForExpandableList);
}
但我要删除的是 eBooksImageAdapterForExpandableList 和 eBrochuresImageAdapterForExpandableList 。因为现在我正在做的是根据现有类别创建ArrayList
。
但是当我不知道有多少类/ groupCount时,我不能那样做。
请给我一个解决方案
答案 0 :(得分:0)
最后我找到了一个解决方案: - )
我将向后解释。
在getChildView()
我必须提供以下代码行
expandableListInsideGridView.setAdapter(new ImageAdapterForExpandableList(expandableListDataClassContext, eItemThumbCachePathArrayListContainer.get(groupPosition), eItemNamesArrayListContainer.get(groupPosition), eItemUrlArrayListContainer.get(groupPosition)));
getChildView()
位于 ExpandableListDataClass 中,扩展了BaseExpandableListAdapter
。
我要做的是声明一个ArrayList
,其中包含一些相同类型的其他ArraLists。如果我使用我的代码解释更多 eItemThumbCachePathArrayListContainer 是ArrayList
,其中包含我想传递的String类型的ArrayLists。这是我使用的简单逻辑,它对我有用。