Передать данные из одного viewcontroller в другой viewcontroller в том же представлении - PullRequest
0 голосов
/ 29 апреля 2020

Я создаю свое первое приложение, и у меня одновременно отображается два контроллера вида . Во-первых, это мои карты Google, а сверху этого представления - панель (модуль), которую я нашел . Контроллер представления Googlemaps вызывает панель , которая находится в отдельной раскадровке.

Я хотел бы иметь возможность передавать данные на панель без использования перехода. Я попробовал подход Segue, но он полностью заменяет весь взгляд. Могу ли я передать данные на панель, не переключаясь в одиночку?

extension MapViewController: GMSMapViewDelegate {
     func mapView(_ mapView: GMSMapView, didTap marker: GMSMarker) -> Bool {

        guard let placeMarker = marker as? PlaceMarker else {return false}


        guard let panview = self.storyboard?.instantiateViewController(withIdentifier: "atminfo") as? PanelMaterial
        else {
            return false
        }


        panview.Titlee = placeMarker.place.name
        atmaddress = panview.Titlee ?? "Me"
        print(atmaddress)

        return false



  }

}

Выше мой код, это один из контроллеров GoogleMaps ViewController, здесь я получаю информацию с булавки и пытаюсь передать ее в Panel, которая активна в том же виде. Я могу получать данные, когда ставлю контрольные точки, но передача данных, пока панель все еще активна в моем представлении GoogleMaps, не отображается.

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 29 апреля 2020

вы также можете использовать одноэлементные классы для передачи данных в другой контроллер или вы можете создать объект в appdelegate, который он также может использовать из любого класса.

, например:

Объявление переменной в appdelegate

var channelID = ""

вы можете использовать как

let kAppDelegate = UIApplication.shared.delegate as! AppDelegate
print(kAppDelegate.channelID)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...