【问题标题】:Get group clicked in OnGroupClickListener获取在 OnGroupClickListener 中单击的组
【发布时间】:2014-06-20 10:52:07
【问题描述】:

如何检索在 ExpandableListView 的 OnGroupClickListener 中单击的组。

我尝试过 parent.getItemAtPosition(groupPosition) 并返回组和子项,所以我认为我必须将 groupPosition 转换为适配器中的绝对位置,但我不知道该怎么做。

new OnGroupClickListener() {

        @Override
        public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
                Item item= parent.getItemAtPosition(groupPosition);
            return true;
        }
    }

【问题讨论】:

    标签: java android listview


    【解决方案1】:

    试试这个:

    new OnGroupClickListener() {
    
        @Override
        public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
    
            Object object = parent.getExpandableListAdapter().getGroup(groupPosition);
    
            ....
            ....
    
            return true;
        }
    }
    

    这应该可行。

    【讨论】:

    • 您能否证明为什么这应该起作用,以便 OP 能够理解原因?
    • getItemAtPosition() 方法返回与组及其子项关联的数据。要获取ExpandableListView 的单个组/子对象,您需要对其Adapter 的引用,然后您需要根据具体情况调用getGroup()getChild() ... :)
    猜你喜欢
    • 1970-01-01
    • 2018-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-04
    • 2018-04-08
    相关资源
    最近更新 更多