2011-10-11 41 views
0

我重寫onTouchEvent,所以我可以檢測到地圖上被點擊的位置。但是現在我的縮放控制已經消失。我的onTouchEvent:Mapview縮放控件不顯示,如果我重寫onTouchEvent方法

public boolean onTouchEvent(MotionEvent event, MapView mapView) { 

      final int action=event.getAction(); 
      final int x=(int)event.getX(); 
      final int y=(int)event.getY(); 
      boolean result=false; 


      if (action==MotionEvent.ACTION_DOWN) { 
       //Log.d(TAG, "down");  
       result=true; 

      } 
      if (action==MotionEvent.ACTION_MOVE) { 

      //Log.d(TAG, "move");   
      result=true; 
      } 
      else if (action==MotionEvent.ACTION_UP) { 


      GeoPoint pt=mapView.getProjection().fromPixels(x, 
                 y); 

      OverlayItem toDrop=new OverlayItem(pt, "MyLoc","Tukaj me poberite"); 

      locations.clear(); 
      locations.add(toDrop); 
      populate(); 

      result=true; 
      } 

      return(result || super.onTouchEvent(event, mapView)); 
     } 

我在做什麼錯?

+0

我也發現,地圖不能移動。 – DixieFlatline

回答

1

你要送花兒給人打電話

super.onTouchEvent(event, mapView)); 

使MapView的正常運行。 所以,你的代碼

return(result || super.onTouchEvent(event, mapView)); 

的最後一行應改爲

super.onTouchEvent(event, mapView); 
return true;