需要对listview中的item的子控件进行单击事件的监听,那么比较好的体验就需要屏蔽最外层的item的点击事件,不然用户看起来像是在点击一个item,而不是item中的控件。
解决办法只需要在你的自定义adapter中重写一个方法即可,如下:
/**
* 用来屏蔽listview中item的点击事件,但是不会屏蔽item子控件的点击事件
* @param position
* @return false 表示屏蔽所有的item点击事件
* ture 表示不屏蔽
*/
@Override
public boolean isEnabled(int position) {
// return super.isEnabled(position);
return false;
}
然后你在adapter的getView()方法中添加子控件的单击事件监听即可。
==================================