我遇到以下问题:
我有一个带有UINavigationBar的UINavigationController,当你从一个视图切换到另一个视图时,它会改变标题。例如,第一个视图可以称为Root,下一个视图可以称为Login。我第一次(也是第一次)调用[navigationController pushViewController:loginViewController animated:YES],登录视图进入,只有在视图完全出现后,导航栏上才会出现“登录”标题。这是因为我在一个从didShowViewController调用的函数中设置了标题。我需要做的是从willShowViewController调用相同的函数。问题是新视图控制器的UINavigationItem尚未创建,所以我无法设置标题... 你如何解决这个问题?
感谢,
弗兰克 -
答案 0 :(得分:1)
您应该在视图控制器的viewDidLoad
或loadView
方法中设置导航项的标题,而不是UINavigationController
委托方法。但是,在创建视图控制器之后设置它的title
属性也应该可以解决问题。
答案 1 :(得分:0)
创建视图控件时,只需在视图控件中设置它即可。 UINavigationItem已经存在(或者至少在你触摸时创建),所以没有理由你不能设置它。