Быстрая передача данных из TabBarController в TableViewController - PullRequest
0 голосов
/ 07 февраля 2019

Я потерян в лабиринте с этой темой.Я реализовал контроллер панели вкладок, что он связан с 3 TableViewController с segues.В классе контроллера панели вкладок у меня есть ряд переменных, которые я хочу передать от панели вкладок к каждому из TableView.Таким образом, я не знаю, как передать переменные из панели вкладок в табличное представление с segues.

enter image description here

Я пробовал эту функцию в моем TabBarController.swift:

func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
        if let destinoController = segue.destination as? TableView1_Controller {

            destinoController.user = user
            destinoController.id = id
            destinoController.name = name

        }
    }

Но это совсем не работает.

Я немного (довольно) потерян

Ответы [ 2 ]

0 голосов
/ 07 февраля 2019

Если вы соединяете сегы в раскадровке, вы можете дать им идентификатор.

Для этого вам нужно нажать на переход, а затем проверить в инспекторе атрибутов.

enter image description here

Теперь в вашем методе prepareForSegue вам просто нужно проверить, из какого сеанса он вызван:

func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
        if segue.identifier == "yourSegueId" {
            if let destinationController = segue.destination as? TableView1Controller {
                destinoController.user = user
                destinoController.id = id
                destinoController.name = name
            }
        }
    }

РЕДАКТИРОВАТЬ: Посмотрите на этот ответ: Панель вкладок данных пропуска

0 голосов
/ 07 февраля 2019

Вам нужно прямо под кодом, в событии щелчка, когда вы нажимаете, чтобы перейти к следующему контроллеру представления, а в отправителе вам нужно передать детали, и после этого в вашем prepareForSegue методе вы получили данные от отправителя

self.performSegue(withIdentifier: "Your Identifier", sender: [AnyObject]())
...