Android ListView:当长时间单击每行中的imageview后向上移动手指时,会调用onItemClick函数
我对ListView有一个问题。首先,这个问题只发生在我真正的Android设备上,它在模拟器上工作正常 我有一个ListView:listVew。在它的每一行中,都有一个imageView:picView。我在自定义适配器中将长时间单击侦听器设置为图像视图:Android ListView:当长时间单击每行中的imageview后向上移动手指时,会调用onItemClick函数,android,listview,imageview,Android,Listview,Imageview,我对ListView有一个问题。首先,这个问题只发生在我真正的Android设备上,它在模拟器上工作正常 我有一个ListView:listVew。在它的每一行中,都有一个imageView:picView。我在自定义适配器中将长时间单击侦听器设置为图像视图: picView.setOnLongClickListener(new View.OnLongClickListener() { public boolean onLongClick(View v) { ...
picView.setOnLongClickListener(new View.OnLongClickListener()
{
public boolean onLongClick(View v)
{
...
}
}
当我长按imageView时,它会移动
2在我的Activity类中,我在listView的每个项目上设置了OnItemClick侦听器
listView.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View view,int position, long id)
{
...
}
}
listView.setOnItemClickListener(新的OnItemClickListener()
{
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
...
}
}
问题是,在真实的设备中,当我长时间单击imageView并向上移动手指时,OnItemClick方法被激活。在模拟器中,这从未发生过
有人知道为什么会这样吗?非常感谢
加:
我在emulator中进行了多次测试,现在我认为问题可以简单地描述如下:
当设备检测到longclicklistener时,是否有方法禁用其他TouchEvent侦听器?我认为您需要拦截listview的touch事件。因此,请尝试在Adapter.getView()中设置OnClickListener
非常感谢!你给了我很大的帮助。
View getView(View convertView, int position, ViewGroup parent){
convertView.setOnClickListener(new View.OnClickListener(){
public void onClick(View v){
onItemClick(parent, convertView, position, 0);
}
});
return convertView;
}