One of my segues transitions from a view controller to a tableview controller. I want to pass an array between the two, but with a navigation controller before the tableview controller, I can't figure out how to pass the array. How do you pass data through a navigatiom controller to a tableview controller?
Override prepareForSegue
and set whatever value on the tableview you'd like. You can grab the tableview from the UINavigation
viewControllers
property.
override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!){ let navVC = segue.destinationViewController as UINavigationController let tableVC = navVC.viewControllers.first as YourTableViewControllerClass tableVC.yourTableViewArray = localArrayValue }
For Swift 3 :
override func prepare(for segue: UIStoryboardSegue, sender: Any?) { let navVC = segue.destination as? UINavigationController let tableVC = navVC?.viewControllers.first as! YourTableViewControllerClass tableVC.yourTableViewArray = localArrayValue }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With