项目中用了GridView,非常奇怪的是监听事件死活不能用,经过百度,知道了其中一个原因。
GridView的item项中会用到布局文件,用以显示图片,文字等信息,如果布局文件用 ImageButton 来显示图片,那么setOnItemClickListener的监听事件就会不起作用,网上说是 imagebutton是用View.OnClickListener... 需要disable掉, itemclicklistener才会有事件来接收,具体怎么做不知道。
用 ImageView 显示图片,监听事件就会正常。应该是 button 类的控件把监听事件截获了吧,导致 setOnItemClickListener 不能收到监听事件。
我用 listview 里面加上 Button ,只要把Button的焦点设为 false,listView的点击事件就会正常,但是GridView里面,我试着把 ImageButton 的焦点设为false,GridView的点击事件确是不起作用,,,,纠结,,,,,