Key事情的散发逻辑 Android按键事情的发生与处了解析
该方法用于分派键盘事情到对应的视图,并依据事情的处置结果前往一个布尔值。方法的参数event示意一个键盘事情,该事情将被分派到相应的视图。方法中的第一步是调用mInputEventConsistencyVerifier.onKeyEvent(event, 0)方法来记载键盘事情的一些基本消息,用于后续的事情分歧性审核。而后会首先调用视图的OnKeyListener对象(假设有的话)的onKey 方法,假设该方法前往true,则示意该键盘事情被该监听器处置,方法前往true,否则该键盘事情被传递给了该视图的dispatch方法。在这里调用了event.dispatch(this, mAttachInfo != null ? mAttachInfo.mKeyDispatchState : null, this)方法,该方法会依据键盘事情的类型,将其散发给视图的onKeyDown或onKeyUp方法启动处置。假设该事情被处置了,则前往true,否则会调用mInputEventConsistencyVerifier.onUnhandledEvent(event, 0)方法记载该事情未被处置的消息,并前往false示意该事情未被处置。