Swift 4 mapkit перезагружает карту после скрытия аннотаций карты - PullRequest
0 голосов
/ 30 апреля 2018

У меня есть два viewcontrollers, которые отображают mapkit и один для описания мест, которые имеют кнопку назад. Но каждый раз, когда я пытаюсь скрыть аннотацию карты и перейти к описанию мест, а затем снова вернуться к mapkit, она перезагружает мою карту с аннотацией, которую я пытаюсь скрыть. Как предотвратить повторную загрузку данных mapkit, но при этом скрыть аннотации моей карты?

func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView) {
        //1
        let coordinate = view.annotation!.coordinate
        //2
        if let userCoordinate = userLocation {
            //3
            if userCoordinate.distance(from: CLLocation(latitude: coordinate.latitude, longitude: coordinate.longitude)) < 30000 {
                //4

                let storyboard = UIStoryboard(name: "Main", bundle: nil)

                if let viewController = storyboard.instantiateViewController(withIdentifier: "ARViewController") as?    PlaceViewController {
                    // more code later
                    //5
                    if let mapAnnotation = view.annotation as? MapA {
                        //6
                        if(mapAnnotation.title == "New")
                        {
                         mapView.view(for: mapAnnotation)?.isHidden = true
                            self.present(viewController, animated: true, completion: nil)
                            viewController.adL.text = "TEST"
                       viewController.descT.text = "Hej"



                        }
}

1 Ответ

0 голосов
/ 30 апреля 2018

перезагружается, потому что здесь

mapView.view(for: mapAnnotation)?.isHidden = true

Вы явно вызываете его для перезагрузки

вы можете напрямую сделать

view.isHidden = true 

как вы видите здесь

didSelect view: MKAnnotationView

, который в данный момент выбран

...