我有一个模态视图 Controller ,其 View 来自 XIB。我希望它与我的其他基于导航的应用程序具有相同的外观和感觉,但它不是推送到导航堆栈的 View ,而是以模态方式呈现。我拖了一个 UINavigationBar 并使它成为一个导出,但它没有要设置的 title 属性。我有两个字段可以显示此模态视图,我希望根据创建模态视图的字段设置不同的标题。
最佳答案
UINavigationBar
的管理堆栈 UINavigationItem
很像 UINavigationController
经理一堆UIViewController
秒。要直接设置可见内容,您应该使用 pushNavigationItem:animated:
或 setItems:animated:
使用您希望栏反射(reflect)的 View Controller 的 navigationItem。
例如:
self.navigationItem.title = @"A custom title";
[self.navigationBar pushNavigationItem:self.navigationItem animated:NO];
上面的代码你有一个属性navigationBar
它引用了独立的导航栏。
如果您不想自己管理它,您可以按照 mplappert 的建议将 View Controller (没有独立的 UINavigationBar
)嵌套在 UINavigationController
中。并以模态方式呈现导航 Controller 而不是 View Controller 。
关于ios - 设置在 Interface Builder 中创建的导航栏的标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4670907/