2015-02-08 2 views
0

общественного класса MainActivity расширяет FragmentActivity {Начиная карту с текущим местоположением

private GoogleMap mMap; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
} 

@Override 
protected void onResume() { 
    super.onResume(); 
    setUpMapIfNeeded(); 
} 

private void setUpMapIfNeeded() { 
    if (mMap == null) { 
     // Try to obtain the map from the SupportMapFragment. 
     mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)) 
       .getMap(); 
     // Check if we were successful in obtaining the map. 
     if (mMap != null) { 
      setUpMap(); 
     } 
    } 
} 
private void setUpMap() { 
    mMap.addMarker(new MarkerOptions().position(new LatLng(0, 0)).title("Marker")); 
    //mMap.setMyLocationEnabled(true); 
} 

}

Это моя активность. Я хочу начать свое приложение с моего текущего местоположения. Я искал некоторые коды, но у меня нет ответа, который я хочу. Может кто-нибудь сказать мне, что я должен добавить?

ответ

0

ли вы попробовать:

LatLng latLng = new LatLng(location.getLatitude(), location.getLongitude()); 
    CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngZoom(latLng, 10); 
    map.animateCamera(cameraUpdate); 
+0

Как инициализировать переменную 'location'? @patrick –

+0

Вы можете: Местоположение местоположение = новое местоположение (""); location.setLatitude (0.0d); location.setLongitude (0.0d); ИЛИ точно так же, как вы указываете местоположение маркера: пример: новый LatLng (0, 0) (для Lat = 0 и Lng = 0) – patrick

0

Пожалуйста, используйте андроида LocationManager, чтобы получить LAT/LNG относительно текущих услуг. Пожалуйста, обратитесь к this answer, в котором объясняется использование LocationManager.

После получения объекта Location с LocationManager, используйте лат/lng, чтобы разместить карту, такую ​​как this.

Смежные вопросы