有没有办法从导航控制器深处的一个视图控制器中执行segue,而当调用segue时,会阻止“后退”按钮出现?这样做的理由是,在深入了解产品之后,我们宁愿用户无法回头搞砸了。
答案 0 :(得分:15)
在应隐藏后退按钮的视图上,您只需在viewDidLoad
中添加此行。
self.navigationItem.hidesBackButton = YES;
答案 1 :(得分:1)
在-(void)viewWillAppear:(BOOL)animated
中,您可以致电[self.navigationItem setHidesBackButton:YES animated:NO];
答案 2 :(得分:1)
我个人更喜欢在源UIViewController中设置隐藏后退按钮而不是目标UIViewController。这允许您对每个segue进行deffer以启用或禁用后退导航。在viewDidLoad
中,您将无法看到使用哪个segue来实例化UIViewController。
因此请准备segue:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"segueToHideBackButtonIdentifier"]){
[segue.destinationViewController.navigationItem setHidesBackButton:YES];
}
答案 3 :(得分:0)
你必须执行segue as" Show Detail"不只是" Show"并且新视图将替换当前的视图