我有一個擴展MapActivity的活動。但是當我點擊地圖時,onTouchEvent永遠不會被調用。爲什麼是這樣?onTouchEvent從未調用過MapActivity
@Override
public boolean onTouchEvent(MotionEvent event) {
Log.d("temp", "onTouchEvent");
return true;
}
編輯:我現在有這兩個方法在一個custum創建的ItemizedOverlay來捕捉我的事件。 當我點擊一個覆蓋圖時,第一個被調用。但是當我觸摸地圖時,第二個(onTouchEvent)從不會被調用。
@Override
protected boolean onTap(int index) {
OverlayItem item = mOverlays.get(index);
this.movement = true;
Log.d("temp", "overlayItem tapped" + item.getTitle());
return true;
}
@Override
public boolean onTouchEvent(MotionEvent event, MapView mapView) {
this.movement = false;
Log.d("temp", "overlayItem tapped finish");
return true;
}
「當觸摸屏事件沒有被其下的任何視圖處理時調用」是的,這確實是問題,但我無法添加自定義監聽器然後,我不得不改變MapActivity類,看起來像是必須有一個更簡單的方法來實現這一點。 – Vincent 2011-04-19 15:25:46
你想用觸摸事件做什麼? – 2011-04-19 15:26:50
我在嘗試改變逐項疊加的位置。首先,我在一個擴展了ItemizedOverlay的自定義類中捕獲onTap事件(就像在google教程中一樣)。然後我嘗試在MapActivity類中獲得新的touchEvent – Vincent 2011-04-19 15:28:36