名著阅读 > Android程序设计:第2版 > 通过键盘操作地图 >

通过键盘操作地图

有些用户可能更喜欢通过键盘操作地图(通常只需要单击一次即可执行菜单事件)。对键盘操作的支持也说明了通常情况下应如何响应键盘事件,因此这里增加了一些代码,支持通过键盘执行缩小、放大和备份当前的活动操作:


/**
 * @see android.app.Activity#onKeyDown(int, android.view.KeyEvent)
 */
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    switch (keyCode) {
        case KeyEvent.KEYCODE_DPAD_UP: // zoom in
            zoomIn;
            return true;
        case KeyEvent.KEYCODE_DPAD_DOWN: // zoom out
            zoomOut;
            return true;
        case KeyEvent.KEYCODE_BACK: // go back (meaning exit the app)
            finish;
            return true;
        default:
            return false;
    }
}
  

为了捕捉按键事件,只需要重写onKeyDown方法,并通过switch定义不同的按键。除了(KEYCODE_A,...KEYCODE_Z;以及类似KEYCODE_SPACE,KEYCODE_SHIFT_LEFT和KEYCODE_SHIFT_RIGHT)这些按键编码外,Android还包含了(KEYCODE_CAMERA和KEYCODE_VOLUME_UP)按键编码,这两个按键编码可能只是出现在特定的设备上。关于完整的按键编码集,可以在这里查看:http://code.google.com/android/reference/android/view/KeyEvent.html。