0

我有一个 webView,我在里面显示 Google v3 API 地图。我有 panControl 和 zoomControl 需要用 dPad 导航。从我的菜单中,我导航右箭头,然后 dPad 进入 panControl 左箭头上的 web 视图。通过一个蓝色的空心矩形可以看到焦点,当我通过 dPad 时,它将重新定位在每个箭头上。几个问题...

  1. 按下dpad的中心OK后如何重新获得焦点(矩形)?
  2. 如何在 zoomControl 上获得焦点状态(我现在唯一的状态是按下状态,按下时将 + 或 - 按钮变为蓝色......我需要一个焦点状态)?
  3. 我如何知道我在哪个元素上(即 - panControl 的左箭头),以便我可以通过在我的 onKey 中返回 true 来控制 dPad?

这是一个屏幕截图,您可以看到我所说的焦点矩形:

在此处输入图像描述

下面是代码:

    mWebView.setOnKeyListener(new OnKeyListener() {

            @Override
            public boolean onKey(View v, int keyCode, KeyEvent event) {
                // TODO Auto-generated method stub
                if (event.getAction() == KeyEvent.ACTION_UP) {
                    switch(keyCode) {
                        case KeyEvent.KEYCODE_DPAD_CENTER:
                            Log.i(DEBUG_TAG, "KEYCODE_DPAD_CENTER");

                            return false;
                        case KeyEvent.KEYCODE_DPAD_DOWN:
                            Log.i(DEBUG_TAG, "KEYCODE_DPAD_DOWN");
                            return false;
                        case KeyEvent.KEYCODE_DPAD_UP:
                            Log.i(DEBUG_TAG, "KEYCODE_DPAD_UP");
                            return false;
                        case KeyEvent.KEYCODE_DPAD_RIGHT:
                            Log.i(DEBUG_TAG, "KEYCODE_DPAD_RIGHT");
                            return false;
                        case KeyEvent.KEYCODE_DPAD_LEFT:
                            Log.i(DEBUG_TAG, "KEYCODE_DPAD_LEFT");
                            return true;
                    }
                    return false;
                }
                return false;
            }
        });

我的最终目标是能够在 webview 中使用 dpad,然后当我到达缩放的 (-) 并按下 dpad 时,我想导航到“播放”按钮,然后右箭头穿过底部屏幕到其他控件。如果我从底部控件离开箭头并点击“播放”,那么我想弹回左侧导航“地图”项目。

4

1 回答 1

1

查看https://code.google.com/p/googletv-android-samples/上的 MapsOnTV 示例代码

浏览源代码树。

于 2011-12-02T21:12:14.797 回答