
item为自定义view,在自定义view中重写了Touch的相关方法,导致了touch传递问题;
item中包含有像button这种天生抢占焦点的控件,导致了focus焦点的变化,从而影响click事件;
可以打断点或log,查看touch的传递情况,根据实际情况进行解决。
Android中View的点击事件如果没有触发,那肯定是代码写的有问题,onClick事件有四种写法:1.匿名内部类:
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//点击后执行
}
})
2.自定义单击事件监听类:
class MyClickListener implements OnClickListener {
@Override
public void onClick(View v) {
//点击后执行
}
}
3.Activity直接实现View.OnClickListener的onClick方法
@Override
public void onClick(View v) {
//点击后执行
}
4.在XML文件中显示指定按钮的onClick属性,这样点击按钮时会利用反射的方式调用对应Activity中的click()方法:
android:onClick="onClick"
public void onClick(View v) {
//点击后执行
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)