Почему я не могу назначить данные из корневого представления во встроенное представление контейнера? - PullRequest
0 голосов
/ 26 мая 2018

У меня есть DetailViewController, у которого container вид.Первое контейнерное представление, которое появится, это DetailChildViewController.

. DetailChildViewController состоит из представления коллекции, которое будет отображать свойства дочернего представления.Однако даже если я назначу данные свойствам detailChildVC в функции prepare (для segue :), переменная свойств в DetailChildViewController по-прежнему returns nil.Как мне это исправить?

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {

        // Set the currentViewController to description child VC because that is the first one
        // shown in the container view
        if segue.identifier == "DetailChildSegue" {
            let detailChildVC = DetailChildViewController()
            // Set product of the childVC
            let actionArray = [product?.action.keys.description] as? [String]
            detailChildVC.properties = actionArray
        }
        // Set the currentVC
        currentVC = segue.destination
    }

1 Ответ

0 голосов
/ 26 мая 2018

Вы назначаете новую переменную DetailChildViewController(), а не пункт назначения

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {

    if segue.identifier == "DetailChildSegue" {

        let detailChildVC = segue.destination as! DetailChildViewController

        let actionArray = [product?.action.keys.description] as? [String]

        detailChildVC.properties = actionArray
    }

    // Set the currentVC

    currentVC = segue.destination
}
...