1.事件从哪里开始?
从我们的手指开始
手指触摸屏幕,改变相关的电压,这个电压传到对应的传感器,再由传感器传给Linux底层,Linux通过JNI的方式将信号传递到activity(了解就行)
2.Activity分发事件到View
在android里面,事件分发从Activity的dispatchTouchEvent开始,在dispatchTouchEvent中通过getWindow获取window对象(抽象类,唯一实现类是PhoneWindow),调用PhoneWindow中的superDispatchTouchEvent方法

PhoneWindow中有一个DecorView(是顶层的容器,继承于FrameLayout),该DecorView是通过generateDecor方法得到,是在generateDecor方法中new出来的一个对象

通过Activity的dispatchTouchEvent调用PhoneWindow中的superDispatchTouchEvent方法,superDispatchTouchEvent中又会调用DecorView的superDispatchTouchEvent方法,而DecorView是一个FrameLayout,所以事件便从activity分发到了ViewGroup中


