DestinationViewController Segue i uinavigationcontroller swift

Więc mam taką metodę preparedforsegue:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "fromEventTableToAddEvent" {

        let addEventViewController: AddEventViewController = segue.destinationViewController as! AddEventViewController

        addEventViewController.newTagArray = newTagArray

    }
}

Jednak w czasie pracy Aplikacja się zawiesza i loguje wypluwa ten Komunikat:

Nie można oddać wartości typu 'UINavigationController'

Błąd pojawia się, ponieważ addEventController jest osadzony w kontrolerze nawigacyjnym, jednak nie jestem pewien, jak skonfigurować segue tak, że destinationViewController jest ustawiony na NavigationController, ale także pozwalają mi przekazać zmienne w metoda prepareForSegue do addeventcontroller

Więc jak miałbym to zrobić używając Swifta?

Bardzo doceniam twoją pomoc i czas, który możesz zaoferować w odpowiedzi. Pomaga Wiele

Author: nhgrif, 2015-02-18

1 answers

Musisz tylko uzyskać dostęp do kontrolera nawigacyjnego topViewController, który będzie AddEventViewController. Oto kod:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "fromEventTableToAddEvent" {

        let nav = segue.destinationViewController as! UINavigationController
        let addEventViewController = nav.topViewController as! AddEventViewController

        addEventViewController.newTagArray = newTagArray

    }
}
 102
Author: rdelmar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-30 21:38:38