fitBounds
방법을 사용하여 Google지도 카메라보기에서 내 모든 마커를 맞추려고합니다. 그래서 내 마커는 markersArray
에 저장되어 있고 다음 코드를 사용하여 GMSCoordinateBounds를 초기화하고 markersArray
의 첫 번째와 두 번째 마커가 제대로 작동합니다.GMSCoordinateBounds iOS 용 Google지도 SDK에서 제대로 작동하지 않는 좌표가 있습니다.
markersArray
에서 3 번째 마커를 추가하려고하면 includingCoordinate
을 사용하여 경계가 표시되지 않습니다. 값을 변경하거나지도에서 아무 것도 업데이트하지 않는 것은 그에 따라 카메라를 변경하는 것입니다.
괴상한 점은 Google maps SDK for iOS docs에 GMSCoordinateBounds가 "변경 불가능하고 수정 후 수정할 수 없다"는 것입니다. 말이 돼? 경계선을 만든 후에 경계를 변경할 수 없습니까? 그런 다음 경계에 좌표를 어떻게 추가합니까?
GMSCoordinateBounds *bounds= [[GMSCoordinateBounds alloc] init];
GMSMarker *marker1 = [markersArray objectAtIndex:0];
GMSMarker *marker2 = [markersArray objectAtIndex:1];
GMSMarker *marker3 = [markersArray objectAtIndex:2];
bounds = [[GMSCoordinateBounds alloc] initWithCoordinate:marker1.position coordinate:marker2.position];
//Add the 3rd marker to the bounds
[bounds includingCoordinate:marker3.position];
GMSCameraUpdate *update = [GMSCameraUpdate fitBounds:bounds withPadding:600.0f];
[mapView_ animateWithCameraUpdate:update];
감사 :
그래서 당신이 뭔가를해야합니다. 내가 묻기 엔 너무 당황 스럽다. – Ali
방금 날 구 했어요! 고맙습니다. – apinho
Google은 위치 배열을 받아들이고 모든 것을 충족시키는 범위를 반환하는 메소드를 Google에 어떻게 포함시키지 않았습니까? 이제 구현 된 방법은 두 위치로만 초기화 한 다음 includingCoordinate를 호출하여 나머지 부분을 반복하도록합니다. 더 좋은 방법이 없어 졌나요? – Pauls