我们在开发中往往会对一个View或者ViewGroup进行自定义的操作,比如重写她的onTouchEvent事件
@Override
public boolean onTouchEvent(@NonNull MotionEvent event) {
return super.onTouchEvent(event);
}
该函数是有个返回值的,那么FALSE和TRUE代表什么意思呢?
true:代表事件被截断,事件被该函数消耗了。
false:事件不被截断,可以继续分发到下一步
点击事件的分发顺序是:
dispatchTouchEvent()—>onTouch(),OnTouchListener接口—>onTouchEvent()—>onClick()
以上是View分发的原理。
之所以这就可以理解了如果我们仅是重写了onTouchEvent,onClick事件事件一定不会触发