Reputation: 791
i want to create navigation bar but nothing happens
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
let viewController = DummyViewController(nibName: nil, bundle: nil)
let navigationController = UINavigationController(rootViewController: viewController)
self.window = UIWindow(frame: UIScreen.main.bounds)
self.window?.rootViewController = navigationController
self.window?.makeKeyAndVisible()
let tabBarController = UITabBarController()
let tabViewController1 = DummyViewController(
nibName: "DummyViewController",
bundle: nil)
let tabViewController2 = SearchViewController(
nibName:"SearchViewController",
bundle: nil)
tabViewController1.tabBarItem = UITabBarItem(
title: "Location",
image: UIImage(named: "ic_location_blue"),
tag: 1)
tabViewController2.tabBarItem = UITabBarItem(
title: "Search",
image:UIImage(named: "ic_search_blue") ,
tag:2)
let controllers = [tabViewController1,tabViewController2]
tabBarController.viewControllers = controllers
window?.rootViewController = tabBarController
return true
}
it seems because i add self.window?.rootViewController = navigationController
and window?.rootViewController = tabBarController
i'm using xib file, and don't know how to use tab bar controller with navigation controller together, thanks before.
Upvotes: 0
Views: 5453
Reputation: 791
solved using
let FirstViewController: HomeViewController = HomeViewController(nibName: "HomeViewController", bundle: nil)
let navigationBarFirst = UINavigationController(rootViewController: FirstViewController)
let SecondViewController: SearchViewController = SearchViewController(nibName: "SearchViewController", bundle: nil)
let navigationBarSecond = UINavigationController(rootViewController: SecondViewController)
let ThirdViewController: InformationViewController = InformationViewController(nibName: "InformationViewController", bundle: nil)
let navigationBarThird = UINavigationController(rootViewController: ThirdViewController)
let FourthViewController: FavoritesViewController = FavoritesViewController(nibName: "FavoritesViewController", bundle: nil)
let navigationBarFourth = UINavigationController(rootViewController: FourthViewController)
let FifthViewController: MenuViewController = MenuViewController(nibName: "MenuViewController", bundle: nil)
let navigationBarFifth = UINavigationController(rootViewController: FifthViewController)
let tabBarController = UITabBarController()
let controllers = [navigationBarFirst, navigationBarSecond, navigationBarThird, navigationBarFourth, navigationBarFifth]
Upvotes: 1
Reputation: 2034
you could try this
let viewController = DummyViewController(nibName: nil, bundle: nil)
let navigationController = UINavigationController()
navigationController.viewControllers = [viewController!]
self.window!.rootViewController = navigationController
self.window?.makeKeyAndVisible()
Hope it helps.
Upvotes: 2
Reputation: 8516
You are writing the nil as nib name. Enter the nib name as follows:-
let viewController = DummyViewController(nibName: "DummyViewController", bundle: nil)
Upvotes: 0