当调用onItemLongClickListener时,onItemClickListener也可以

时间:2014-10-27 11:07:26

标签: android android-listview onitemclicklistener onitemlongclicklistener

ListView onItemClickListeneronLongItemClickListener用于不同的选项。它在jellybean中工作正常。但是,在Nexus5中,当我长按ListView时,onItemClickListeneronLongItemClickListener都会被调用。为什么会这样?有人知道吗?

1 个答案:

答案 0 :(得分:7)

您应该将OnItemLongClickListener的返回值设置为 true

private AdapterView.OnItemLongClickListener itemLongClickListener = new AdapterView.OnItemLongClickListener() {
    @Override
    public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
        //... Do stuff
        return true;
    }
};

这是事件告诉其父级已处理click事件的方式。如果设置为false,则也会触发OnItemClickListener,同时调用其侦听器方法。