2011-11-13 98 views
0

我正在使用Google Maps API製作Android應用程序。我加載地圖來找到我的位置,但我遇到了問題。當我移動到另一個位置時,我立即返回了以屏幕爲中心的位置。我寧願地圖會保持在我已經移動的地步。如何移動谷歌地圖?

這裏是我的代碼:

private void setCurrentLocation(Location location) 
{    
    if(location != null) 
    { 
     // Aggiorna la location 
     Lat = location.getLatitude(); 
     Long = location.getLongitude(); 

     int latitudeE6 = (int) Math.floor(Lat * 1.0E6); 
     int longitudeE6 = (int) Math.floor(Long * 1.0E6); 

     GeoPoint p1 = new GeoPoint(latitudeE6, longitudeE6); 
     GeoPoint p2 = new GeoPoint(currentLatitude, currentLongitude); 

     // Aggiorna la posizione corrente 
     currentLatitude = latitudeE6; 
     currentLongitude = longitudeE6; 

     // Sposta la posizione corrente sulla mappa di F_Map 
     F_Map.mapController.setCenter(p1); 

     // Calcola i metri appena fatti 
     float dist = Distance.getDistance(p1, p2) *1000; 

     if(dist > 1) // maggiore di 1 metro 
     {        
      Toast.makeText(getApplicationContext(), "distance: "+dist,Toast.LENGTH_SHORT).show(); 

      try 
      { 
       SendMyPositionToDB(currentLatitude, currentLongitude); 
      } catch(IOException e) { 
       e.printStackTrace(); 
      }        
     } 
    } 
} 

回答

0

您可以設置:

F_Map.mapController.setCenter(p2); 

相反P1的?

+0

問題不在於座標。 現在每當GPS檢測到一個班次(map.setCenter(); onChangeLocation())時,地圖就會移動。 我想確保當您觸摸屏幕時,setCenter被禁用,然後在您按下特殊按鈕時重新激活。 – user1023571