问题
I have a gridview and i want its items to act different if user performs click or long click that is why i am using OnItemClickListener and OnItemLongClickListener but when long click happens both listeners react.I want to perform only OnItemLongClickListener.
回答1:
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
return true;
}
return true will be prevent click event to be continue. It will be perform only OnItemLongClickListener.
回答2:
You can use AdapterView.setOnItemLongClickListener. GridView inherits AdapterView, so you can invoke that method on GridView too.
回答3:
In order to intercept long cliks (aka tapping) you should imlement GestureDetector.OnGestureListener
来源:https://stackoverflow.com/questions/3950211/how-to-prevent-onitemclicklistener-work-when-long-click-performed