2016-03-28 10 views
0

この場所にマーカーがある場所(36.1302,5.524)のGoogleマップを表示するコードがあります。この場所でマーカーを作成すると、マーカーが間違った場所に表示されるという問題があります。 http://imgur.com/pCDu3iPGoogle Maps Android API v2、間違ったマーカー場所

+0

あなたの質問は完了していないと思います。 –

+0

Google Apiを使用してユーザーの場所を取得した後、Google Maps APIを使用して地図に表示したいのですが、問題は正しい位置情報を取得することですが、マーカーを追加すると誤った場所に配置されますスクリーンショットに表示 – ZeroOne

答えて

1

あなたmLatitudemLongitude値は、おそらく0で、マップ上にプロット場所は0,0であるためである。ここで

@Override 
public void onMapReady(GoogleMap googleMap) { 
    LatLng latLng = new LatLng(mLatitude,mLongitude); 
    MarkerOptions options = new MarkerOptions() 
      .position(latLng) 
      .title("I am here!"); 
    googleMap.addMarker(options); 
    googleMap.moveCamera(CameraUpdateFactory.newLatLng(latLng)); 
} 

はスクリーンショットです。

これは、値が設定される前に、mLatitudemLongitudeの変数を使用していることが主な原因です。 onMap readyはアクティビティライフサイクルではかなり初期に呼び出され、センサから座標を取得するのには時間がかかります。

onLocationChanged(Location location)コールバックメソッドでマーカーを追加してみてください。

関連する問題