Android ExpandableListView长按事件+得到一级列表二级列表的下标

一级列表点击事件:expandableListView.setOnGroupClickListener()

二级列表点击事件:expandableListView.setOnChildClickListener()

一级列表长按事件:expandableListView.setOnLongClickListener()

二级列表长按事件:expandableListView.setOnItemLongClickListener()

今天我们来分析一下二级列表的长按事件 (我这里进行的操作是长按删除该item,所以首先我们应该拿到一级列表的下标和二级列表的下标才能根据下标进行删除item)

alarmClockExpandablelist.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
    @Override
    public boolean onItemLongClick(AdapterView adapterView, View view, int i, long l) {

        if(ExpandableListView.getPackedPositionType(l)==ExpandableListView.PACKED_POSITION_TYPE_CHILD) {
            long packPos = ((ExpandableListView) adapterView).getExpandableListPosition(i);
            int groupPosition = ExpandableListView.getPackedPositionGroup(packPos);
            int childPosition = ExpandableListView.getPackedPositionChild(packPos);
            Logger.e("------------------------------->" + groupPosition);
            Logger.e("--------------------------------------->" + childPosition);
        }
        return false;
    }
});

groupPosition即为一级列表下标

childPosaition即为二级列表下标

你可能感兴趣的:(Android ExpandableListView长按事件+得到一级列表二级列表的下标)