#swift #swift5 #mapkitannotation
#swift #swift5 #mapkitannotation
Вопрос:
Я хочу показывать вид раскадровки всякий раз, когда пользователь нажимает на аннотацию, и ее субтитры видны. Мой код работает несколько, но делает не совсем то, что я хочу. Вот мой код
import MapKit
class ViewController: UIViewController,MKMapViewDelegate {
@IBOutlet weak var homeMapView: MKMapView!
let annotation = MKPointAnnotation()
@IBOutlet weak var viewToShow:UIView!
override func viewDidLoad() {
super.viewDidLoad()
setupMapPin()
viewToShow.transform = CGAffineTransform(translationX: 0, y: 450)
}
func setupMapPin() {
homeMapView.delegate = self
annotation.coordinate = CLLocationCoordinate2D(latitude: 9.0833, longitude: 7.5361)
homeMapView.addAnnotation(annotation)
annotation.title = "Title"
annotation.subtitle = "Randome subtitle"
let defaultRegion = MKCoordinateRegion(center: annotation.coordinate, latitudinalMeters: 2000, longitudinalMeters: 2000)
homeMapView.setRegion(defaultRegion, animated: true)
}
func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView) {
if boatview.transform == .identity {
UIView.animate(withDuration: 1) {
self.boatview.transform = CGAffineTransform(translationX: 0, y: 450)
}
} else {
UIView.animate(withDuration:1) {
self.boatview.transform = .identity
}
}
}
}
`
Я хочу, чтобы представление анимировалось, когда пользователь нажимает на аннотацию, и субтитры видны, т.е. Когда аннотация активна. Представление анимируется, когда аннотация нажата и активна, но не анимируется, когда она неактивна. Что я здесь не делаю?