onTouch 是在 LongTouch 之后注册的
onTouch is registered right after LongTouch
我有一个 ListView,当我按住(长按)某个项目时,该项目将从列表中删除。
它正在记录触摸,而长触摸仍在发生。
这是我的代码 -
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Intent intent = new Intent(getApplicationContext(), MapsActivity.class);
intent.putExtra("placeNumber", i);
intent.putExtra("Type", "Fav");
startActivity(intent);
}
});
listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
Log.i("Removing", "" + favouriteLocations.get(position));
favouriteLocations.remove(position);
Favourites.arrayAdapter.notifyDataSetChanged();
return false;
}
});
放开长按后,'phantom' 触摸出现在长按所在的项目上(新项目在列表中向上移动)并且 activity 加载就像它一样已被感动
它一度运行良好,我确定我没有更改代码。有什么想法吗?
谢谢。
您需要 return true
来自 long click listner
,您也必须在 xml 中有这个 android:longClickable="true"
但是列表视图 长可以点击默认 所以根本不需要更新 xml。
我有一个 ListView,当我按住(长按)某个项目时,该项目将从列表中删除。
它正在记录触摸,而长触摸仍在发生。
这是我的代码 -
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Intent intent = new Intent(getApplicationContext(), MapsActivity.class);
intent.putExtra("placeNumber", i);
intent.putExtra("Type", "Fav");
startActivity(intent);
}
});
listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
Log.i("Removing", "" + favouriteLocations.get(position));
favouriteLocations.remove(position);
Favourites.arrayAdapter.notifyDataSetChanged();
return false;
}
});
放开长按后,'phantom' 触摸出现在长按所在的项目上(新项目在列表中向上移动)并且 activity 加载就像它一样已被感动
它一度运行良好,我确定我没有更改代码。有什么想法吗?
谢谢。
您需要 return true
来自 long click listner
,您也必须在 xml 中有这个 android:longClickable="true"
但是列表视图 长可以点击默认 所以根本不需要更新 xml。