天天看点

Android GridView setOnItemClickListener 监听事件不起作用的一个原因

项目中用了GridView,非常奇怪的是监听事件死活不能用,经过百度,知道了其中一个原因。

GridView的item项中会用到布局文件,用以显示图片,文字等信息,如果布局文件用 ImageButton 来显示图片,那么setOnItemClickListener的监听事件就会不起作用,网上说是 imagebutton是用View.OnClickListener... 需要disable掉, itemclicklistener才会有事件来接收,具体怎么做不知道。

用 ImageView 显示图片,监听事件就会正常。应该是 button 类的控件把监听事件截获了吧,导致 setOnItemClickListener 不能收到监听事件。

我用 listview 里面加上 Button ,只要把Button的焦点设为 false,listView的点击事件就会正常,但是GridView里面,我试着把 ImageButton 的焦点设为false,GridView的点击事件确是不起作用,,,,纠结,,,,,