如何在ExpandableListView中实现Click Listener

时间:2016-05-10 10:01:49

标签: android expandablelistview expandablelistadapter

我有一个自定义适配器,它扩展了BaseExpandableListAdapter

当我点击某些ExpandableList时,我希望我的TextView展开和折叠。

我该如何实施?

我想,我必须向方法OnClickListenergetGroupView添加getChildView。我看,有布尔标志isExpanded

所以看起来应该是这样的:

@Override
public View getGroupView(int groupPosition, final boolean isExpanded,
                         View convertView, ViewGroup parent) {
textView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (isExpanded){

               //What should i write here?
            }
        }
    });
    return convertView;
}

但是我应该在OnClickListener写些什么?我找不到任何可以扩展/折叠我的列表视图的函数。

是否有像listView.expandGroup(itemPosition);这样的功能?

2 个答案:

答案 0 :(得分:2)

实际上有一个ExpandableListView.expandGroup。这是反向行动collapseGroup

如果您引用的TextView位于listview项目中,那么您对适配器内onClickListener内的操作是正确的。这篇post讨论了动态扩展ExpandableListView的问题,我认为你可以理解并反转行动,以实现你的目标。

希望这会有所帮助。干杯! :d

答案 1 :(得分:0)

当您单击它时,要作为组的展开或折叠按钮使用的TextView必须是ExpandableListViewAdapter的标题。

此外,您还有setOnGroupExpandListener和setOnGroupCollapseListener,它们在展开或折叠组时触发。