1:image与buttom事件分发的区别,image没有click 而buttom有
imageView1.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
System.out.println("事件image:"+event.getAction());
return true;
default:
System.out.println("事件image:"+event.getAction());
break;
}
return false;
}
});
在image MotionEvent.ACTION_DOWN需要返回true才可以执行move和up事件,而buttom默认有click所以或执行move,up事件
2:ontouch方法早ontouchEvent方法前执行如果ontouch方法返回true事件就被消费掉了,ontouckEvent不执行
,那么listivew将不能点击和滚动,同时buttom也不能click响应
3:事件机制先viewgroup到view如果viewgroup中onInterceptTouchEvent返回true事件拦截掉了就不会再向上传递给view,view的ontouch和onclick不会执行