如何使用NavigationController隐藏iOS7上的后退按钮标题

vis*_*kar 3 navigationcontroller ios7

我有一个基于NavigationController的iOS7应用程序,在此我想要隐藏与雪佛龙一起显示的后退按钮文本.有没有办法解决这个问题?我尝试将空字符串设置为后退按钮标题,在前一个视图上尝试空标题,似乎如果它找到空标题,则用"后退"文本替换它.

请帮忙

谢谢

vis*_*kar 11

终于最终解决了如下问题,这个工作完美无缺.

self.navigationController.navigationBar.topItem.title = @"";
Run Code Online (Sandbox Code Playgroud)

从此链接删除iOS UIBarButtonItem的标题文本

但是,如果你从一个视图到下一个视图导航,你可以看到一个视图导航栏的标题消失了,当我把以前的观点viewWillDisappear的viewDidDisappear,上述方案是不基于故事板的UINavigationController方案的一流解决方案,在另一种情况下,我最终决定使用一个条形按钮并按照原生后退按钮V形图标设置其图像,这样可以获得更好的效果.


Erw*_*wan 9

@vishal提出的答案有一个严重的缺点:如果你从A导航回B,它会从控制器A中删除标题.

这是在推送控制器B之前应用于控制器A的更安全的解决方案:

self.navigationController.navigationBar.topItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"" style:UIBarButtonItemStylePlain target:nil action:nil];
Run Code Online (Sandbox Code Playgroud)

对于迅捷:

if let topItem = controller.navigationController?.navigationBar.topItem {
    topItem.backBarButtonItem = UIBarButtonItem(title: "", style: UIBarButtonItemStyle.Plain, target: nil, action: nil)
}
Run Code Online (Sandbox Code Playgroud)