??????????????????????????????????????????????event????????????????????????ü????????????????′???????View?????????dispatchKeyEvent????????ò???event?????????KeyEvent???????????dispatch??????ü????????
???????????????????????KeyEvent?????????dispatch???????????????????????Activity???????????????
????Step 12. KeyEvent.dispatch
????[java] view plaincopyprint?
????public class KeyEvent extends InputEvent implements Parcelable {
????......
????public final boolean dispatch(Callback receiver?? DispatcherState state??
????Object target) {
????switch (mAction) {
????case ACTION_DOWN: {
????......
????boolean res = receiver.onKeyDown(mKeyCode?? this);
????......
????return res;
????}
????case ACTION_UP:
????......
????return receiver.onKeyUp(mKeyCode?? this);
????case ACTION_MULTIPLE:
????final int count = mRepeatCount;
????final int code = mKeyCode;
????if (receiver.onKeyMultiple(code?? count?? this)) {
????return true;
????}
????......
????return false;
????}
????return false;
????}
????......
????}
????public class KeyEvent extends InputEvent implements Parcelable {
????......
????public final boolean dispatch(Callback receiver?? DispatcherState state??
????Object target) {
????switch (mAction) {
????case ACTION_DOWN: {
????......
????boolean res = receiver.onKeyDown(mKeyCode?? this);
????......
????return res;
????}
????case ACTION_UP:
????......
????return receiver.onKeyUp(mKeyCode?? this);
????case ACTION_MULTIPLE:
????final int count = mRepeatCount;
????final int code = mKeyCode;
????if (receiver.onKeyMultiple(code?? count?? this)) {
????return true;
????}
????......
????return false;
????}
????return false;
????}
????......
????}
????????????????????frameworks/base/core/java/android/view/KeyEvent.java?С?
????????????ù???????????????receiver?????????View?????????????KeyEvent.Callback???????KeyEvent.Callback???????????????????????????????
????KeyEvent?????????mAction???????????????????????????????????????????ACTION_DOWN??ACTION_UP??ACTION_MULTIPLE?????KeyEvent?????????dispatch??????ò???receiver?????????View???????????onKeyDown??onKeyUp??onKeyMultiple????????????????????????
???????赱????????????????????????????????KeyEvent?????????mAction???????ACTION_DOWN???????????????ò???receiver?????????View???????????onKeyDown????????????????????????
???????????????????????漰???????????????????SPASVOС??(021-61079698-8054)?????????????????????????