В моем коде у меня есть следующий результат:
@objc func handleTap(_ gestureRecognizer: UILongPressGestureRecognizer) {
let location = gestureRecognizer.location(in: mapView)
locCoord = mapView.convert(location, toCoordinateFrom: mapView)
let annotation = MKPointAnnotation()
annotation.coordinate = locCoord!
annotation.title = "latitude:" + String(format: "%0.02f", annotation.coordinate.latitude) + "& longitude:" + String(format: "%0.02f", annotation.coordinate.longitude)
annotation.subtitle = "Loc of new bball court"
mapView.addAnnotation(annotation)
performSegue(withIdentifier: "addCourtSegue", sender: UILongPressGestureRecognizer.self)
}
func prepare(for segue: UIStoryboardSegue, sender: UILongPressGestureRecognizer) {
super.prepare(for: segue, sender: sender)
let vc = segue.destination as! Newcourtviewcontroller
vc.locCoord = self.locCoord
}
В основном у меня установлен MapKit на экране и распознаватель жестов поверх MapKit. Всякий раз, когда пользователь касается местоположения на карте, он создает аннотацию и выполняет переход к go на другой экран (переход настраивается от одного контроллера представления к следующему контроллеру представления в раскадровке и получает идентификационный тег, который я см. в executeSegue). Однако когда я открываю симулятор iOS и пробую переход, он переключается между двумя экранами (промежуточный экран виден только в течение 0,5-1 секунды), когда он должен переходить только на один экран. Посмотрите на изображения ниже. Я уверен, почему это происходит, потому что я настроил переход в раскадровке только для перехода на один экран. Любая помощь будет принята с благодарностью.
Переходы по второму экрану к Переходы по первому / промежуточному экрану до