显示在根视图控制器上的后退按钮

时间:2016-10-26 13:34:54

标签: ios swift xcode uinavigationcontroller swift3

在我的应用程序中,我有一个导航控制器。除了我在根视图中不断收到不需要的后退按钮之外,一切看起来都很好。例如

这是在没有选择任何选项(它总是如何)的情况下出现的方式 enter image description here

这是我选择一个选项并返回

后的样子

enter image description here

如何摆脱后退按钮(仅在下面显示的根视图控制器上)?

4 个答案:

答案 0 :(得分:2)

你正在从其他控制器推送你的RootController,这就是你得到这个后退按钮的原因。

有两种方法可以删除此按钮。当您返回RootView或隐藏RootView上的后退按钮时,要么总是POP。

要隐藏后退按钮,请使用以下代码:

self.navigationController.navigationItem.hidesBackButton = true;

要弹出:

[self.navigationController popViewControllerAnimated:true];// If you have pushed from RootView controller

[self.navigationController popToViewController:YourRootViewController animated:true]; // To travel back to RootView controller from any Controller

希望这会对你有所帮助;

答案 1 :(得分:1)

只需隐藏特定视图控制器中的后退按钮(在您的情况下是根视图控制器)。将此代码添加到您的viewDidLoad()方法:

let backButton = UIBarButtonItem(title: "", style: .plain, target: navigationController, action: nil)
navigationItem.leftBarButtonItem = backButton

答案 2 :(得分:1)

试试此代码。

   override func viewDidLoad() {
   super.viewDidLoad()
   self.navigationItem.setHidesBackButton(true, animated:true)
}

返回主VC或根VC:

  func backToMain() {
 // If you want to go back to the previous view controller
  navigationController?.popViewControllerAnimated(true)

 //If you want to go back to the root view controller
 navigationController?.popToRootViewControllerAnimated(true)
  } 

答案 3 :(得分:-1)

你这行代码,

override func viewWillAppear(animated: Bool) {
    self.navigationController?.navigationBarHidden = true
}