같은 장소에 어노테이션이 두개가 표시될 때 나는 고정으로 있는 어노테이션 보다 검색 결과 어노테이션이 더 상단으로 보이게 하고싶었다.
이전까지 나의 결과는
검색 결과 어노테이션이 가장 뒤로 가버리는 맘에 안드는 결과가 나왔다.
이 문제를 해결하기 위한 방법이 displayPriority이다!
annotation view의 우선순위를 지정해주는 프로퍼티이다.
MKMapViewDelegate의 viewFor에서 어노테이션을 등록할 때 우선순위를 지정해줬다.
기본으로 나타나 있는 어노테이션에는 .defaultLow
값을, 검색 결과로 위에 보여줄 annotation에는 .defaultHigh
값을 주었더니 원하는 결과가 나왔다!
.defaultHigh가 아니어도 디폴트 값인 .required 여도 같은 결과가 나온다. 사라질 어노테이션에 .defaultLow값을 주는 것이 더 중요한 부분인 것 같다.
지도에 보여줄 어노테이션의 개수가 많아지면 .defaultHigh까지 사용해야 하지 않을까..
'iOS > 🔎 swift 정리하기' 카테고리의 다른 글
[iOS/RxSwift] CombineLatest vs Observable.zip (0) | 2023.11.19 |
---|---|
RxSwift 정리하기 (0) | 2023.11.08 |
MapKit CustomAnnotation (0) | 2023.10.10 |
[iOS/Swift] MapKit - 원하는 곳에 어노테이션을 찍어보자 (0) | 2023.10.01 |
[iOS/Swift] Realm - 백업 및 복구 구현하기 (0) | 2023.09.16 |