글쎄,이 주제와 관련된 몇 가지 주제를 가지고 있지만 아무도 명확한 해결책을 제시하지 못하는 것 외에는 아직 논리를 얻지 못했습니다. 어쨌든, 나는 그것을 명확하게 다시 묻고, 샘플 앱에서 캡쳐 화면을 제공하여 마술을하기를 바랄 것이다.android mapsv2의 현재 위치를 동적으로 검색하는 중
아래에서 볼 수 있듯이 Google지도에는 맞춤 마커가 있습니다. Imageview
을 추가하여 내 시나리오에 구현할 수 있습니다. 지도 위에는 TextView
이 있습니다. 지도에서 마커의 위치가 변경되면 주소가 동적으로 변경됩니다. 그러나 우리는 드래그되지 않습니다 & 마커를 떨어 뜨리면 중심에 고정되고 드래그되지 않습니다. 우리가하는 일은지도를 패닝하는 것뿐입니다. 패닝을 중지하면 마커가지도의 어딘가에 표시되고 주소는 Textview
에 빠르게 표시됩니다.
onMarkerDragEnd()
을 처리하여 주소를 변경할 수 있지만 다른 시나리오입니다. 또한 GPS 연결이 없습니다. 클래스를 사용하여 위도와 경도로보기 screenPosition
을 변환하는 것 같습니다. 공식 사이트를 확인했지만 구현 방법을 알지 못했습니다.
너무 합계가 TextView
에 동적 주소 변경을 제공하려면 어떻게해야합니까? &지도를 드래그하지 않고지도를 이동하려면 어떻게해야합니까? 마커를 드래그하여가이 코드를 참조의 현재 주소를 표시 끝날 때 너무 내가 드래그 방법을 처리하는 방법을 참조하십시오
또한 여기 내 코드입니다
@Override
public void onMarkerDragEnd(Marker marker) {
LatLng position=marker.getPosition();
String filterAddress = "";
Geocoder geoCoder = new Geocoder(
getBaseContext(), Locale.getDefault());
try {
List<Address> addresses = geoCoder.getFromLocation(
position.latitude,
position.longitude, 1);
if (addresses.size() > 0) {
for (int index = 0;
index < addresses.get(0).getMaxAddressLineIndex(); index++)
filterAddress += addresses.get(0).getAddressLine(index) + " ";
}
}catch (IOException ex) {
ex.printStackTrace();
}catch (Exception e2) {
// TODO: handle exception
e2.printStackTrace();
}
TextView myTextView = (TextView) findViewById(R.id.test);
myTextView.setText("Address " + filterAddress);
Log.d(getClass().getSimpleName(), String.format("Dragged to %f:%f",
position.latitude,
position.longitude));
}
어디서이 메서드를 호출해야합니까? onCreate 또는 다른 곳에서? 또한 lat와 lng는 전역 변수이거나 그 일식과 같이 변수가 아니라고 결론을 내릴 수 있습니다. 감사합니다. – regeme