iOS如何删除后退按钮?

jbe*_*den 49 navigationcontroller ios

我有一个带导航栏的应用程序,它会推送到登录屏幕视图控制器,然后推送到主菜单.有什么办法可以删除主菜单上的后退按钮,这样用户就无法返回登录界面了?

谢谢!

编辑:使用Xcode 4.3并以编程方式完成所有腿部工作.

Pet*_*ski 119

你可以做:

[self.navigationItem setHidesBackButton:YES];
Run Code Online (Sandbox Code Playgroud)

在第二个视图控制器中(您要隐藏按钮的控制器).

  • 可能想要使用导航堆重新思考,而是提出一个模态VC - 见下文. (3认同)
  • self.navigationItem.hidesBackButton = true 对于 Swift 4+ (2认同)

LJ *_*son 9

彼得斯的回答是正确的,虽然我认为更好的问题是为什么?在您想要登录用户的模式中,而不是使用Pushed VC,提供Modal VC并使用委托方法来获取在Login过程中获得的userinfo.如果您需要,我可以发布一个完整的代码示例,但听起来您已经在登录过程中得到了详细信息.只需使用:

presentModalViewController
Run Code Online (Sandbox Code Playgroud)

代替:

pushViewController
Run Code Online (Sandbox Code Playgroud)

这样,您就不必担心导航堆栈并做一些与用户界面指南不符的内容.


Ham*_*lik 6

迅速

self.navigationItem.hidesBackButton = true
Run Code Online (Sandbox Code Playgroud)


Yog*_*oga 5

上面的代码对我不起作用.正如UINavigationItem中建议的setHidesBackButton:YES不会阻止返回,我不得不使用:

[self.navigationItem setLeftBarButtonItem:[[UIBarButtonItem alloc] initWithCustomView:[[UIView alloc] init]]];
Run Code Online (Sandbox Code Playgroud)