2011-11-30 42 views
0

我有一個webView,我正在顯示Google v3 API地圖。我有我需要用dPad導航的panControl和zoomControl。從我的菜單中,我瀏覽右箭頭,並且dPad進入panControl左側的webview。焦點被一個藍色空心矩形所看到,它將在我的dPad通過時重新定位在每個箭頭上。幾個問題...DPad在地圖上控制webview中的Google API v3

  1. 如何重新獲得焦點(矩形),一旦我按dpad的中心確定?
  2. 如何在zoomControl上獲得焦點狀態(我現在唯一的狀態是按下狀態,按下時按+或 - 按鈕會變成藍色...我需要一個焦點狀態)?
  3. 如何知道我所在的元素(即 - panControl的左箭頭),以便我可以通過在我的onKey中返回true來控制dPad?

這裏是一個屏幕截圖,讓你可以看到我的重點講的矩形:

enter image description here

下面是代碼:

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上按下時,我想導航到「播放」按鈕,然後向右跨屏幕底部的箭頭到其他控件。如果我從底部控件中離開箭頭並點擊「播放」,那麼我想彈出到左側導航「地圖」項目。

+1

我最終制作了自定義控件,所以我可以控制焦點。與此同時,我添加了自定義JavaScript函數來處理自定義控件的平移和縮放onClick。 – taraloca

回答

相關問題