OnLong Click和expand - collapse与Expandable ListView不同步

时间:2013-03-29 16:56:51

标签: android android-listview expandablelistview

我必须在可扩展列表视图中长按“组”行时弹出警告对话框。当我在onGroupView类的BaseExpandableListAdapter方法中实现它时它会起作用。但是此扩展崩溃功能不是工作。我认为长按事件首先获取用户交互,因此阻碍了组视图的扩展。

我在群组的虚增视图上设置了onLongClickListener

然而,当我对孩子做同样的事情时,由于可扩展列表中的孩子没有像群组这样的基本功能(扩展和折叠),因此工作得很好。

任何人都可以建议我如何拦截这两个事件(长按+展开 - 折叠)。

1 个答案:

答案 0 :(得分:0)

您可以在expandablelistview上设置setOnItemLongClickListener。 ExpandableListView.PACKED_POSITION_TYPE_GROUP是组中的if,将其更改为 ExpandableListView.PACKED_POSITION_TYPE_CHILD您可以使用longclicks对组童子进行操作。

    pager_income = (ExpandableListView) findViewById(R.id.income_scroll);

    pager_income.setOnItemLongClickListener(new OnItemLongClickListener() {
        @Override
        public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
            if (ExpandableListView.getPackedPositionType(id) == ExpandableListView.PACKED_POSITION_TYPE_GROUP) {
                Toast toast = Toast.makeText(c, "Loong", Toast.LENGTH_LONG);
                toast.setGravity(Gravity.CENTER_VERTICAL|Gravity.CENTER_HORIZONTAL, 0, 0);
                toast.show();

                return true;
            }

            return false;
        }
    });
相关问题