onItemLongClick works, onItemClick not



我有一个可扩展列表视图,它有普通和长按的侦听器,如下所示:

    expandableListView.setOnItemClickListener(new AdapterView.OnItemClickListener()
    {
        @Override
        public void onItemClick(AdapterView<?> adapterView, View view, int position, long id)
        {
        ...
        }
    });
    expandableListView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener()
    {
        @Override
        public boolean onItemLongClick(AdapterView<?> adapterView, View view, int position, long id)
        {
        ...
        }
    });

奇怪的是,长项目点击侦听器被调用,但正常的一个没有。长按返回什么或是否注册长按都无关紧要。

普通点击监听器有什么特别之处吗?

你不能使用 OnItemClickListener!这就是ExpandableListView的重点

项目单击用于展开/折叠组。您应该使用 OnChildClickListener .

但是,您可以使用 setOnChildClickListener(ExpandableListView.OnChildClickListener onChildClickListener)和 setOnGroupClickListener(ExpandableListView.OnGroupClickListener onGroupClickListener)的任意组合。

最新更新