У меня есть контроллер представления (внутри контроллера навигации), который имеет сегментированный элемент управления с 2 параметрами и представлением контейнера, где 2 UITableViewControllers будут отображаться в соответствии с выбранным сегментом.
Первое представление загружается в раскадровку (crt + click), встраивается и связывается с контейнером, и таблица загружается нормально, таблица начинается над панелью навигации, но когда я меняю сегмент и загружается другое представление, оно начинается с верхняя часть представления, за панелью навигации. (Когда я тоже вернусь к первому виду)
Чтобы изменить представление, я следую этому: Swift - Как связать два контроллера представления в одно представление контейнера и переключаться между ними с помощью сегментированного управления?
И вот мой код:
let viewControllerIdentifiers = ["categoriasTVC", "unidadesTVC"]
@IBAction func opcion(sender: AnyObject) {
let newController = (storyboard?.instantiateViewControllerWithIdentifier(viewControllerIdentifiers[sender.selectedSegmentIndex]))! as UIViewController
let oldController = childViewControllers.last! as UIViewController
oldController.willMoveToParentViewController(nil)
addChildViewController(newController)
newController.view.frame = oldController.view.frame
transitionFromViewController(oldController, toViewController: newController, duration: 0, options: .TransitionNone, animations:{ () -> Void in
// nothing needed here
}, completion: { (finished) -> Void in
oldController.removeFromParentViewController()
newController.didMoveToParentViewController(self)
})
}
Как я могу сохранить встроенный навигационный контроллер?