iphone - 呈现模态视图 Controller 后将 BarButtons 添加到 UINavigationBar

标签 iphone uinavigationcontroller

我正在使用实用程序应用程序的模板。在 FlipSideViewController 中,我为 UINavigationController navController 添加了 IBOutlet。在代码中,我添加了 navController 就很好了。 rootViewController 完美加载:

navController.viewControllers = [[NSArray arrayWithObject:rootViewController] retain];
[self.view addSubview:navController.view];

我很好地改变了 navController 的颜色:

navController.navigationBar.tintColor = [UIColor colorWithRed:0.6 green:0.75 blue:0.6 alpha:1.0];
navController.navigationBar.translucent = NO;

我制作了一个按钮(注意:“完成”指的是关闭 modalviewcontroller 的 IBAction):

UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"TEST" style:UIBarButtonItemStyleDone target:self action:@selector(done:)];

我使用该按钮创建一个 navItem:

UINavigationItem *backNavItem = [[UINavigationItem alloc] initWithTitle:@"TESTTEST"];
[backNavItem setRightBarButtonItem:backButton animated:YES];

我尝试添加该按钮:

[navController.navigationBar pushNavigationItem:backNavItem animated:YES];

上面的代码严重失败。我显然无法向 navController 添加按钮,因为:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Cannot call pushNavigationItem:animated: directly on a UINavigationBar managed by a controller.'

我是否必须制作一个单独的 UINavigationBar 以某种方式连接到我的 navController?我尝试走这条路,但没有成功。

最佳答案

我查看了“导航栏”here :

关于如何添加按钮的出色见解。您必须从显示的正确 ViewController 添加按钮。

关于iphone - 呈现模态视图 Controller 后将 BarButtons 添加到 UINavigationBar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2569340/

相关文章:

iphone - 多个同时发生的 UILocalNotification

iphone - 是否有包含所有 iOS 设置本地化字符串的资源?

fonts - 更改 uinavigationcontroller 上后退按钮的字体

ios - 带有后退按钮的导航栏中的 UISegmentedControl

ios - 使用单个 ViewController 动态切换设备方向

ios - 如何为 UIBarButtonItem 设置 Action ?

iphone - Titanium appcelerator 构建失败

iphone - 获取 NSDate 之间的秒间隔,但始终获取零秒

iphone - 使用自定义字体将文本本地化为中文

ios - 无法转换 UINavigationController 类型的值