2011-11-13 9 views
0

Google Maps APIを使用してAndroid用のアプリケーションを作成しています。私は自分の立場を見つけるために地図を読み込んでいますが、問題があります。私が別の場所に移動すると、すぐに画面の中央に戻ってきました。むしろ私が移動した地点に地図が残っていると思います。ここでGoogleマップを移動するにはどうすればよいですか?

は私のコードです:

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

あなたが設定することができます。代わりに、P1の

F_Map.mapController.setCenter(p2); 

を?

+0

問題は座標ではありません。 GPSがシフトを検出するたびに地図が移動します(onChangeLocation()内のmap.setCenter();)。 画面をタッチすると、特別なボタンを押すとsetCenterが無効になってから再度アクティブになります。 – user1023571

関連する問題