Java 为什么可以';我不能删除一个项目吗?

Java 为什么可以';我不能删除一个项目吗?,java,android,arrays,database,string,Java,Android,Arrays,Database,String,我真的很沮丧,因为我今天已经尝试了4个小时,但我找不到解决办法。由于某些原因,我的长时间单击侦听器有时不会被检测到 listview.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> arg0, View arg1,

我真的很沮丧,因为我今天已经尝试了4个小时,但我找不到解决办法。由于某些原因,我的长时间单击侦听器有时不会被检测到

 listview.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
        @Override
        public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                                       int pos, long id) {

            Toast.makeText(MainActivity.this, "Long click", Toast.LENGTH_SHORT).show();

            contactArrayList.remove(pos);
            arrayAdapter.notifyDataSetChanged();


            return true;
        }
    }); 
那么为什么它只在某些时候起作用呢?我的代码有问题吗,或者这是安卓本身的问题?如果这是安卓系统的问题,我该如何解决


它第一次工作,但在退出我的应用程序、旋转屏幕等之后,长按停止被检测到。我已经被困在这个问题上将近8个小时了,我真的,真的,真的需要你的帮助。

可能会尝试使用View.OnItemLongClickListener()而不是AdapterView,并将OnItemLongClick()中的参数更改为View


希望这对您有所帮助。

可以尝试使用View.OnItemLongClickListener()而不是AdapterView,并将OnItemLongClick()中的参数更改为View


希望这有帮助…

我不知道这是否已发布,但我也收到了以下消息:
检测到DataBuffer对象中存在内部数据泄漏!在使用完所有DataBuffer扩展对象后,请确保显式地对其调用release()。(内部对象:com.google.android.gms.common.data。DataHolder@RANDOMNUMBERSANDLETTERS)
此外,例如,它将工作,然后我将旋转屏幕,它将停止工作…发布的代码没有问题。检查堆栈跟踪和内存泄漏可能有助于找到cause@Rich,我有几个问题,您注册侦听器的方法是什么,设置侦听器的条件是什么。如果已修复,请忽略此项。可能的重复项我不知道是否已发布,但我还收到以下消息:
检测到DataBuffer对象中存在内部数据泄漏!在使用完所有DataBuffer扩展对象后,请确保显式地对其调用release()。(内部对象:com.google.android.gms.common.data。DataHolder@RANDOMNUMBERSANDLETTERS)
此外,例如,它将工作,然后我将旋转屏幕,它将停止工作…发布的代码没有问题。检查堆栈跟踪和内存泄漏可能有助于找到cause@Rich,我有几个问题,您注册侦听器的方法是什么,设置侦听器的条件是什么。如果已修复,请忽略此项。可能的副本
/ViewRootImpl: ViewRoot's Touch Event : ACTION_UP