2015-05-29 1 views
0

Я хочу показать мое текущее местоположение с помощью настраиваемого широты и долготы, я установил широту и долготу объекта Location, как это:Google Map не показывает (Увеличение до) текущего местоположения после настройки широты и долготы вручную

Location location = new Location (""); 
location.setLatitude(lat); 
location.setLongitude(lon); 

После этого я вызываю (место нахождения) метод onLocationChanged, где этот метод так:

@Override 
public void onLocationChanged(Location location) { 
    // TODO Auto-generated method stub 

    mLatitude = location.getLatitude(); 
    mLongitude = location.getLongitude(); 
    LatLng latLng0 = new LatLng(mLatitude, mLongitude); 

    mGoogleMap.moveCamera(CameraUpdateFactory.newLatLng(latLng0)); 
    mGoogleMap.animateCamera(CameraUpdateFactory.zoomTo(12)); 

} 

Карта была показать, но не показывая мое текущее местоположение с синей точкой, как обычно, кто-нибудь может помочь?

+0

Вы устанавливаете обновление onback в обратном вызове в методе onCreated. Если не попробуйте этот ответ, http://stackoverflow.com/a/17591377/1676666 – Ply

ответ

2

Вы можете попробовать запустить свой код в GoogleMap.OnMapLoadedCallback лайков:

mGoogleMap.setOnMapLoadedCallback(new OnMapLoadedCallback(){ 
    @Override 
    public void onMapLoaded() { 
    mGoogleMap.moveCamera(CameraUpdateFactory.newLatLng(latLng0)); 
    mGoogleMap.animateCamera(CameraUpdateFactory.zoomTo(12)); 
    } 
}); 

Update:

mGoogleMap.setOnMapLoadedCallback(new OnMapLoadedCallback(){ 
     @Override 
     public void onMapLoaded() { 
     mGoogleMap.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng0,12)); 
     } 
    }); 

Использование

mGoogleMap.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng0,12)); 

Вместо

mGoogleMap.moveCamera(CameraUpdateFactory.newLatLng(latLng0)); 
mGoogleMap.animateCamera(CameraUpdateFactory.zoomTo(12)); 

Поскольку код CameraUpdateFactory.zoomTo(12) не установлен Широта и долгота, поэтому значения будут введены с помощью [0,0]. Это даст вашему центру карты значение [0,0]

+0

все еще не работает человек ... у вас есть еще одно предложение? – Redturbo

+0

Вы разместили лог для lat и lon для location.setLatitude (lat); location.setLongitude (lon) ;, что эти значения? – Chitrang

+0

Я обновил свой ответ, используя CameraUpdateFactory.newLatLngZoom вместо CameraUpdateFactory.zoomTo (12) –

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

  • Нет связанных вопросов^_^