Push Segue没有后退按钮

时间:2015-11-13 05:17:43

标签: ios objective-c segue

我有2个视图控制器A和B,当在A上点击UIButton时,我有一个推送到se的推送信号,在A上我有这个在viewDidLoad

self.navigationController.navigationBar.hidden = NO;
self.navigationItem.hidesBackButton = YES;

然后在B中我在viewDidLoad

中有这个
self.navigationController.navigationBar.hidden = NO;
self.navigationItem.hidesBackButton = NO;

但是在B中,我看不到后退按钮发生了什么?为什么会这样?

如果我在屏幕上完全滑动它会返回,但我想要导航栏中的后退按钮。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

实际上,当您在parentView中隐藏导航栏按钮时,它会隐藏完整堆栈中的导航栏按钮。要隐藏导航barButton,请在A viewWillAppear

viewController中编写代码
self.navigationController.navigationBar.hidden = NO;
self.navigationItem.hidesBackButton = YES;

在A viewController的{​​{1}}中,取消隐藏导航按钮

viewWillDisappear

现在它将显示B - (void) viewWillDisappear:(BOOL)animated { [super viewWillDisappear:animated]; self.navigationItem.hidesBackButton = NO; } 中的导航栏按钮。

<强>更新

不要将viewController隐藏在A backButton上,而是设置viewController nil

backButton

在B self.navigationController.navigationBar.topItem.leftBarButtonItem = nil;

上添加自定义backButton