????????????????????????????y?????????TextView?????????????receiver??????????????TextView????TextView????д?????View????????onKeyDown????????????KeyEvent?????????dispatch?????TextView?????????onKeyDown????????????????????????

????Step 13. TextView.onKeyDown

????[java] view plaincopyprint?

????public class TextView extends View implements ViewTreeObserver.OnPreDrawListener {

????......

????@Override

????public boolean onKeyDown(int keyCode?? KeyEvent event) {

????int which = doKeyDown(keyCode?? event?? null);

????if (which == 0) {

????// Go through default dispatching.

????return super.onKeyDown(keyCode?? event);

????}

????return true;

????}

????......

????}

????public class TextView extends View implements ViewTreeObserver.OnPreDrawListener {

????......

????@Override

????public boolean onKeyDown(int keyCode?? KeyEvent event) {

????int which = doKeyDown(keyCode?? event?? null);

????if (which == 0) {

????// Go through default dispatching.

????return super.onKeyDown(keyCode?? event);

????}

????return true;

????}

????......

????}

????????????????????frameworks/base/core/java/android/widget/TextView.java?С?

????TextView?????????onKeyDown??????????????????doKeyDown?????????event????????????????????????????????y????TextView?????UI????TextView?????????doKeyDown??????which????0?????????????y????TextView??????????event?????????????????????????????????View???????????????????View????????onKeyDown???????

???????????????????TextView?????ü??????????????????TextView?????????????????????

??????Android???У???????Android?????TextView?????????????????????????????????????????UI??????????????????????????????????????????????????????????UI?????????????????????У???????????????????SurfaceView???????????????????UI????????????????????????????????????????????????????????檔??????!