Android에서 Google지도로 작업하고 있습니다. 확대/축소 수준을 조절해야합니다.현재 위치에 따른 확대/축소 마커 위치 android
지도 중심에 mapController.setCenter (current_location)를 사용하여 설정 한 마커가 하나 있습니다.
그리고지도마다 다른 색으로 표시되는 마커가 10 개 이상 있습니다.
예상 결과 : 사람의 현재 위치는 항상 중앙에 있어야하며 녹색 아이콘이 화면 (현재 위치 마커 가운데)에 표시되도록 줌 레벨을 조정해야합니다.
내가 뭘하려 :
INT greenlat = (INT) (. AppCoordinates.getInstance() latitudelist.get (0) * 1E6); int greenlong = (int) (AppCoordinates.getInstance(). thousandselist.get (0) * 1E6); int currentlat = (int) (AppCoordinates.getInstance(). getCurrentLatitude() * 1E6); int currentlong = (int) (AppCoordinates.getInstance(). getCurrentLongitude() * 1E6);
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
mapController.zoomToSpan((int) (Math.abs(greenlat - currentlat) * 1), (int)(Math.abs(greenlong - currentlong) * 1));// to have some padding on the edges.
mapController.animateTo(new GeoPoint((greenlat + currentlat), (greenlong + currentlong)/2));
나는 화면의 마커를 부스에 전시 할 수 있지만 화면 중앙에 표시 할 위치를 원합니다.
이 방법 map.animateCamera 시도 (CameraUpdateFactory.newLatLngZoom (새 LatLng를 (currentlat, currentlong을), 8)); 8은 줌 배율입니다.이 줌 배율은 요구 사항에 따라 주어진 포인트에서 또는 바뀔 수 있습니다. –
안녕하세요 Haresh, animateCamera()라는 메서드가 없으므로 android.maps를 사용하고 있습니다. ( –