0
我有一個webView,我正在顯示Google v3 API地圖。我有我需要用dPad導航的panControl和zoomControl。從我的菜單中,我瀏覽右箭頭,並且dPad進入panControl左側的webview。焦點被一個藍色空心矩形所看到,它將在我的dPad通過時重新定位在每個箭頭上。幾個問題...DPad在地圖上控制webview中的Google API v3
- 如何重新獲得焦點(矩形),一旦我按dpad的中心確定?
- 如何在zoomControl上獲得焦點狀態(我現在唯一的狀態是按下狀態,按下時按+或 - 按鈕會變成藍色...我需要一個焦點狀態)?
- 如何知道我所在的元素(即 - 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上按下時,我想導航到「播放」按鈕,然後向右跨屏幕底部的箭頭到其他控件。如果我從底部控件中離開箭頭並點擊「播放」,那麼我想彈出到左側導航「地圖」項目。
我最終制作了自定義控件,所以我可以控制焦點。與此同時,我添加了自定義JavaScript函數來處理自定義控件的平移和縮放onClick。 – taraloca