Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to embed tab bar controller with a split view controller in swift?

im guessing there needs to be changes in the app delegate? Thanks for the help!

like image 444
Ayesha Patel Avatar asked May 04 '16 11:05

Ayesha Patel


1 Answers

1) Create a sample Master/Detail via xcode

2) Drag a TabBarController on the storyboard

3) Change the TabBarController to the initial view controller.

4) Control Drag from the TabBarController to the SplitViewController

5) Assign a title to the SplitViewController in the storyboard

6) In the app delegate replace the reference to the SplitViewController as follows.

let tabBarViewController = self.window!.rootViewController as! UITabBarController
print(tabBarViewController.viewControllers?.count)
var splitViewController:UISplitViewController? = nil
for viewController in tabBarViewController.viewControllers! {
if viewController.title == "Master" {
    splitViewController = viewController as? UISplitViewController
}
}

let navigationController = splitViewController!.viewControllers[splitViewController!.viewControllers.count-1] as! UINavigationController
navigationController.topViewController!.navigationItem.leftBarButtonItem = splitViewController!.displayModeButtonItem()
splitViewController!.delegate = self
like image 73
Jigar Tarsariya Avatar answered Oct 11 '22 06:10

Jigar Tarsariya