Objective c 如何从导航栏中删除“后退”按钮

Objective c 如何从导航栏中删除“后退”按钮,objective-c,ios,xcode,Objective C,Ios,Xcode,我有那个密码。它可以将编辑按钮添加到导航栏中,但后退按钮仍然存在,但它将变得不响应 UIBarButtonItem *editButton = [[UIBarButtonItem alloc] initWithTitle:@"Edit" style:UIBarButtonItemSty

我有那个密码。它可以将编辑按钮添加到导航栏中,但后退按钮仍然存在,但它将变得不响应

UIBarButtonItem *editButton = [[UIBarButtonItem alloc] 
                               initWithTitle:@"Edit"                                            
                               style:UIBarButtonItemStyleBordered 
                               target:nil 
                               action:nil];
[[self.navigationController.navigationBar.items objectAtIndex:1] setRightBarButtonItem:editButton];

[[self.navigationController.navigationBar.items objectAtIndex:1]setHidesBackButton:YES];
简而言之:

  self.navigationItem.backBarButtonItem = nil;

简而言之:

  self.navigationItem.backBarButtonItem = nil;


这两种方法都可以

self.navigationItem.leftBarButtonItem = nil;


这两种方法都可以

self.navigationItem.leftBarButtonItem = nil;

你也可以使用

目标C:

self.navigationItem.hidesBackButton = YES;
斯威夫特:

navigationItem.hidesBackButton = true
你也可以使用

目标C:

self.navigationItem.hidesBackButton = YES;
斯威夫特:

navigationItem.hidesBackButton = true

我以前也做过类似的事情。在将要按下下一个视图控制器的控制器中,您不希望在其中插入“后退”按钮,请将此按钮放在执行pushViewController的任何位置:

 myNextViewController.navigationItem.hidesBackButton = YES;
 [self.navigationController pushViewController:myNextViewController animated:YES];

我以前也做过类似的事情。在将要按下下一个视图控制器的控制器中,您不希望在其中插入“后退”按钮,请将此按钮放在执行pushViewController的任何位置:

 myNextViewController.navigationItem.hidesBackButton = YES;
 [self.navigationController pushViewController:myNextViewController animated:YES];

这很古老,但今天读了这篇文章后,答案是:

self.navigationItem.hidesBackButton = YES;
是正确的,但不完整,这需要在以后的生命周期方法中完成,然后是viewDidLoad,也就是将其放入viewWillApper或其他稍后的方法中,然后才能工作

- (void)viewWillAppear:(BOOL)animated{
    self.navigationItem.hidesBackButton = YES;
}

希望这有助于像我今天这样看一篇旧文章的人

这是一篇旧文章,但今天读完这篇文章后,答案是:

self.navigationItem.hidesBackButton = YES;
是正确的,但不完整,这需要在以后的生命周期方法中完成,然后是viewDidLoad,也就是将其放入viewWillApper或其他稍后的方法中,然后才能工作

- (void)viewWillAppear:(BOOL)animated{
    self.navigationItem.hidesBackButton = YES;
}

希望这有助于像我今天这样查看旧帖子的人

可以记录self.navigationItem.BackBarButtoniMid,但是=[[self.navigationController.navigationBar.items objectAtIndex:1]BackBarButtonim]返回空指针…:(我认为您的导航有问题-除非在堆栈上按viewController之前执行此操作,否则Bar/ControllerBack按钮不会消失。@Prince answer每次都有效。可以记录self.navigationItem.BackbarButtoniMid,但=[[self.navigationController.navigationBar.items objectAtIndex:1]BackbarButtonim]返回空指针…:(我认为您的导航有问题-除非在堆栈上按viewController之前执行此操作,否则导航栏/控制器返回按钮不会消失。@Prince answer每次都有效。是。在按viewController之前执行此操作是正确的方法。是。在按viewController之前执行此操作是正确的方法。