MapKit CustomAnnotation
·
iOS/UIKit&SwiftUI
플젝 진행하면서 정리한 내용입니다! 틀린 내용이 있을 수도 허접 할 수도 있습니다.. 지적 대 환영, 꿀팁 대 환영  맵킷에 대한 정보는 정말이지 별로 없다..정리하고 보니 별거 아닌 내용을 얼마나 붙잡고 있던걸까 흑흑 1. 커스텀 어노테이션 등록하기 (viewFor)2. 어노테이션 선택에 따라 디자인 변경하기 (didSelect, didDeSelect)3. 식별자가 다른 어노테이션을 만들어 서로 다른 기능을 하도록 구현하기  💡 커스텀 어노테이션 등록하기해당 부분은 검색하면 정보가 꽤나 많이 나온다. 때문에 어렵지 않다.mapkit delegate는 연결되어 있을 것이고, delegate를 채택한 후 진행한다.MKMapViewDelegate에 구현된 viewFor 매개변수가 있는 메서드를 사용한다.해..
[iOS/Swift] search bar 에 테두리와 그림자 동시 적용하기 - clipsToBounds
·
iOS/UIKit&SwiftUI
search bar의 cornerRadius를 적용하고, 그림자도 적용하려 하였다.cornerRadius는 clipsToBounds를 사용하여 layer 바깥을 잘라내어 적용이 되는데, 그림자는 layer 바깥에 적용하는 것이라 clipsToBounds값을 설정하는 데에 문제가 생긴다. clipsToBounds를 true로 설정하여 테두리 조건만 적용이 된 모습이다. 그림자를 적용하였지만 반영이 되지 않는다.두가지 조건을 모두 적용하려면 어떻게 해야할까? 💡 그림자를 적용할 UIView를 만들자파란색 uiview를 만들어 바깥에 배치할 uiview는 그림자를 적용하고, 내부에 들어갈 뷰는 corner radius를 적용시키면 된다.   UIView의 위에 searchBar를 올린 후 각각 디자인을 적용..
[iOS/Swift] MapKit - 원하는 곳에 어노테이션을 찍어보자
·
iOS/UIKit&SwiftUI
맵뷰에서 선택하는 곳에 어노테이션을 찍어보자  1. 맵뷰에 탭 제스쳐를 추가한다.let tapGesture = UITapGestureRecognizer(target: self, action: #selector(mapViewTapped(_ :)))mapView.addGestureRecognizer(tapGesture) 2. sender.location(in: )을 통해 임의로 탭한 위치를 가져온다.@objc private func mapViewTapped(_ sender: UITapGestureRecognizer) { let location: CGPoint = sender.location(in: mainView.mapView) let mapPoint: CLLocationCoordinate2D =..
[iOS/Swift] MapKit - 위치 권한 설정을 구현해보자!
·
iOS/UIKit&SwiftUI
위치 권한 진행 방법을 결정 하려면 권한 부여 상태와 정확도 값을 모두 확인해야 한다.위치서비스o 권한 요청권한 허용사용자 정보 접근 가능추후 거부 (설정 → 옵션 끄기)ios 시스템 설정 유도권한 거부ios 시스템 설정 유도x 권한 없음alert → ios 시스템 설정 유도 CoreLocation importimport CoreLocation 위치 매니저 인스턴스 생성private let locationManager = CLLocationManager() delegate 연결locationManager.delegate = self 프로토콜 연결해주기extension MainMapViewController: CLLocationManagerDelegate { // 사용자의 위치를 성공적..