2016-12-23 6 views
0

지도에서 MKCircle 오버레이를 만들려고하지만 사용자가 확대하면 화면의 원 크기가 일정하게 유지되기를 바랍니다.MapKit MKCircle 확대/축소 수준에서 반경 변경

사용자가 확대하면 반경이 작아지고 사용자가 축소하면 반경이 커집니다.

저는 스위프트 3에서 일하고 있습니다.이 작업을 수행하는 데 사용해야하는 특정 MapKit 메서드가 있습니까? 원의 이미지를 주석으로 사용하는 옵션이 있음을 알고 있지만 원의 색상을 동적으로 변경하고 싶습니다. 즉

는, 나는 MKCircle 당신이 확대하고 사용자가 축소 사용자의 확대 그래서, 반경이 작아진다

답변

0

에서와 같이 같은 MKPolyline 저울 같은 방법으로 크기를 조정할 반경

MKCircle는 아마도 오버레이 (MKOverlay)의 일부가 될 것이다 커진다. 오버레이는 지구 자체에 도면을 시뮬레이션하여 작동합니다.. 따라서 도면은 줌 레벨과 함께 변경됩니다.

그런 일이 일어나지 않게하려면 MKOverlay를 사용하지 마십시오. 예를 들어 원을 표시하고지도보기 앞에 놓는 일반적인보기를 만들 수 있습니다. 또는 대신 주석을 사용할 수 있습니다 (MKAnnotation). 지도가 확대 될 때 주석 이미지의 크기는 변하지 않습니다.

+0

아, 이제 내 질문이 혼란스러워 보입니다. 줌의 원 크기가 변경되는 것을 원하지 않는다고 생각합니다. 기본적으로 사용자가 확대함에 따라 원의 크기를 화면과 관련하여 변경하지 않기를 바랍니다. 추가보기로 내 제안을 시도해 보겠습니다. –

+0

그러나 사용자가지도를 이동하면이보기가 변경되지 않습니까? 사용자가 팬을 사용하여지도상의 특정 지점 (좌표)에 머물러 서클을 원합니다. –

+1

그래, 그게 문제입니다. 일반보기를 사용한 경우 사용자 패닝을 추적하고보기를 이동해야합니다. 이것이 대안 접근 방식으로 주석을 제안한 이유입니다. 하지만 내 대답의 주요 목표는 왜 오버레이가 _ 불가능하지 않은지 설명하는 것이 었습니다. – matt