GridView单击事件和长按事件遇到的问题
最开始只使用了单击事件,后来增加需求,增加了长按功能,但是一直没有效果,百度,自己找资料,最终找到原因,特记录下来
1,单击事件
gridview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
}
});
2,长按事件,一定要区分gridview.setOnLongClickListener();
和gridview.setOnItemLongClickListener
,我最开始使用的OnLongClickListener,就一直监听不到长按事件,切记setOnItemLongClickListener长按事件里面应返回true,拦截点击事件,返回true,就不会再触发单击事件了,使用popupwindow会有效看出长按效果
gridview.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
MyLog.e("长按事件","长按事件");
return true;
}
});
3,有的说,注册事件的先后顺序也有影响,这个也可以注意一下