MyLayout继承线性布局,线性布局为viewgroup子类
button为view子类
布局如下:MyLayout平铺整个屏幕,button被包裹在里面。
现象:在点击button的时候,把消息拦截,MyLayout就没有接收到点击事件。
推断(假设):先传递给view 在传到ViewGroup(看源码后面证明为错误)
实验过程:
Linearlayout中方法onInterceptTouchEvent() —->返回值为假时,可以把事件传递给view;返回为真时,事件不会传给view。
结论:当view 在 ViewGroup里面的时候,先传递给当前布局的layout布局,再传递到view。onInterceptTouchEvent() 可以阻止想view传递。