Commit e177ac38 by Daniel Dahan Committed by GitHub

Merge pull request #920 from markst/issue/919

Tab bar controller dynamically adds & removes child view controllers
parents 6f9098e6 fecae48e
......@@ -197,13 +197,15 @@ fileprivate extension TabsController {
return
}
let fvcIndex = viewControllers.index(of: fvc)
let tvcIndex = viewControllers.index(of: viewController)
let tvc = viewController
tvc.beginAppearanceTransition(true, animated: true)
prepareViewController(at: tvcIndex!)
tvc.view.isHidden = false
tvc.view.frame = container.bounds
let fvcIndex = viewControllers.index(of: fvc)
let tvcIndex = viewControllers.index(of: viewController)
var isAuto = false
switch tvc.motionModalTransitionType {
......@@ -229,6 +231,9 @@ fileprivate extension TabsController {
s.rootViewController = tvc
s.view.isUserInteractionEnabled = true
tvc.endAppearanceTransition()
s.removeViewController(viewController: fvc)
completion?(isFinished)
......@@ -249,15 +254,6 @@ internal extension TabsController {
fileprivate extension TabsController {
/// Prepares all the view controllers.
func prepareViewControllers() {
for i in 0..<viewControllers.count {
guard i != selectedIndex else {
continue
}
viewControllers[i].view.isHidden = true
prepareViewController(at: i)
}
prepareViewController(at: selectedIndex)
prepareRootViewController()
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment