1

我在 appDelegate 中有这个:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

            window = UIWindow(frame: UIScreen.mainScreen().bounds)
            let nav = NavigationViewController(rootViewController: MenuViewController(rootViewController: FeedVC()))
            window?.rootViewController = SideNavigationController(rootViewController: nav, leftViewController: LeftVC(), rightViewController: nil)
            window?.makeKeyAndVisible()
}

这工作正常。我的 FeedVC 显示出来了,我可以使用 SideNavigationController 访问 LeftVC。(顺便说一句,这是一个好方法吗?)

然后在我的 FeedVC 类中,我想将 titleLabel (navigationItem) 添加到 navigationBar 但 navigationController 是 nil !

所以我认为我的 FeedVC 没有嵌入到 NavigationController 中。但我没有为此使用故事板。我如何以编程方式执行此操作并计算顶部还有一个 SideNavigationController ......

感谢您的帮助!

4

1 回答 1

0

是的,一切看起来都不错,除了您不需要将 设置rightViewController为 nil。你可以完全忽略它。

titleLabel 的问题在于您的 FeedVC 是 MenuViewController 的子级。MenuViewController 是 Nav 的子项,因此应该在 MenuViewController 中设置 navigationItem。您可以翻转 MenuViewController 和 NavigationController 的关系,以便 Nav 是 Menu 的子项。然后您就可以相应地设置 FeedVC navigationItem。

希望有帮助:)

此外,框架是 Material,而不是 Material Kit。可能更适合搜索来纠正这个问题:)

于 2016-04-26T19:05:41.220 回答