2013-05-11 5 views
0

이 난에서 onCreate (의 코드)안드로이드 위치 관리자 - 대기 위치

LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); 
locationManager.requestLocationUpdates( 
LocationManager.GPS_PROVIDER, 500, 1, new LocationListener(){ 
      @Override 
      public void onLocationChanged(Location loc) { 
           CameraUpdate center = CameraUpdateFactory.newLatLng(new LatLng(loc.getLatitude(), loc.getLongitude())); 
           myMap.moveCamera(center); 
      } 
}); 

이 때 변경 사용자의 위치 발생을 가지고,하지만 난 그것을 한 번 일어날합니다. 나는 새 위치가 새로운 위치지도로 이동받은 후 당신이 무슨 뜻인지 이해할 수없는 사용자

+0

에지도를 이동할 때까지 기다려야합니다. 사용자 위치에 대해 카메라를 한 번 설정하고 싶습니까? –

+0

예. locationManager.getLastKnownLocation(); 메소드를 사용하지 않고 카메라를 이동 시키길 원합니다. –

답변

1

클래스 멤버

private LocationManager mLocationManager; 
MyLocationListener mLocationListener 

locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); 
MyLocationListener mLocationListener = new MyLocationListener(); 
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 500, 1, myLocationListener); 

public MyLocationListener extends LocationListener 
{ 
     @Override 
     public void onLocationChanged(Location loc) { 
       CameraUpdate center = CameraUpdateFactory.newLatLng(new LatLng(loc.getLatitude(), loc.getLongitude())); 
       myMap.moveCamera(center); 
       mLocationManager.removeUpdates(mLocationListener): 
      } 

     @Override 
     public void onProviderDisabled(String provider) 
     { 

     } 

     @Override 
     public void onProviderEnabled(String provider) 
     { 

     } 

     @Override 
     public void onStatusChanged(String provider, int status, Bundle extras) 
     { 

     } 

}