如何从 TabBarController 内部的 NavBarController 显示 ViewController 故事板元素
How to Reveal ViewController Storyboard Elements from a NavBarController inside of a TabBarController
所以我有一个以编程方式(而不是通过故事板)创建的 CustomTabBarController。在 viewDidLoad() 内部,我创建了一个 ProfileNavController,视图控制器是 ProfileViewController(),也是以编程方式:
override func viewDidLoad() {
super.viewDidLoad()
// ProfileNavController <- ProfileController
let profileController = ProfileViewController()
let profileNavController = UINavigationController(rootViewController: profileController)
let modifiedProfileNavController = UITabBarItem(title: "Profile", image: UIImage(named: ""), selectedImage: UIImage(named: ""))
profileNavController.tabBarItem = modifiedProfileNavController
// Tab-bar selector (ignore the "recentMessagesNavController", Whosebug)
viewControllers = [recentMessagesNavController, createDummyNavControllerWithTitle("Groups", imageName: ""), createDummyNavControllerWithTitle("Submit", imageName: ""), createDummyNavControllerWithTitle("Search", imageName: ""), profileNavController]
}
然后我创建了一个 Profile.storyboard 并将视图控制器的 class 分配给身份检查器中的 ProfileViewController(在右侧列中)。在情节提要视图控制器中,我放置了一个标题为 "Hello World".
的标签
问题是,每当我 运行 程序并单击“配置文件”选项卡时,标签(以及情节提要中的其他所有内容)都不会显示。如何让它们显示?
ProfileViewController.swift供参考:
class ProfileViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = UIColor.redColor()
navigationItem.title = "Profile"
}
}
您需要使用故事板引用
初始化ProfileViewController
let profileController = ProfileViewController()
改为
let profileController = UIStoryboard(name: "Profile", bundle: nil).instantiateInitialViewController()
所以我有一个以编程方式(而不是通过故事板)创建的 CustomTabBarController。在 viewDidLoad() 内部,我创建了一个 ProfileNavController,视图控制器是 ProfileViewController(),也是以编程方式:
override func viewDidLoad() {
super.viewDidLoad()
// ProfileNavController <- ProfileController
let profileController = ProfileViewController()
let profileNavController = UINavigationController(rootViewController: profileController)
let modifiedProfileNavController = UITabBarItem(title: "Profile", image: UIImage(named: ""), selectedImage: UIImage(named: ""))
profileNavController.tabBarItem = modifiedProfileNavController
// Tab-bar selector (ignore the "recentMessagesNavController", Whosebug)
viewControllers = [recentMessagesNavController, createDummyNavControllerWithTitle("Groups", imageName: ""), createDummyNavControllerWithTitle("Submit", imageName: ""), createDummyNavControllerWithTitle("Search", imageName: ""), profileNavController]
}
然后我创建了一个 Profile.storyboard 并将视图控制器的 class 分配给身份检查器中的 ProfileViewController(在右侧列中)。在情节提要视图控制器中,我放置了一个标题为 "Hello World".
的标签问题是,每当我 运行 程序并单击“配置文件”选项卡时,标签(以及情节提要中的其他所有内容)都不会显示。如何让它们显示?
ProfileViewController.swift供参考:
class ProfileViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = UIColor.redColor()
navigationItem.title = "Profile"
}
}
您需要使用故事板引用
初始化ProfileViewController
let profileController = ProfileViewController()
改为
let profileController = UIStoryboard(name: "Profile", bundle: nil).instantiateInitialViewController()