我想在从一个视图转换到另一个视图时隐藏后退按钮。我阅读了有关此问题的问题,每个答案都是“使用hidesBackButton
”。这个问题是:
当我把它放在viewDidLoad / viewWillAppear时,后退按钮箭头隐藏但字符串“Back”没有。
当我把它放在viewDidAppear中时,后退按钮消失但对用户可见
我该如何解决这个问题?
修改:
以下是如何复制此问题(或错误?)的方法 在Xcode中使用Swift创建一个新的Tabbed应用程序。在FirstViewController.swift中,使用performSegueWithIdentifier导航到第二个视图控制器。在SecondViewController.swift中使用hidesBackButton隐藏导航栏后退按钮,您将看到问题所在。
答案 0 :(得分:41)
尝试添加此内容:
let backButton = UIBarButtonItem(title: "", style: .Plain, target: navigationController, action: nil)
navigationItem.leftBarButtonItem = backButton
答案 1 :(得分:16)
您可以使用以下代码隐藏UINavigationBar
上的后退按钮。
Swift 3 ;
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.navigationItem.hidesBackButton = true
}
答案 2 :(得分:8)
这对我有用
navigationController?.navigationBar.topItem?.hidesBackButton = true
答案 3 :(得分:6)
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
self.navigationController?.navigationBarHidden = false
var button: UIButton = UIButton()
button.setImage(UIImage(named: "person-icon.jpg"), forState: .Normal)
button.frame = CGRectMake(0, 0, 25, 25)
button.targetForAction("actioncall", withSender: nil)
var rightItem:UIBarButtonItem = UIBarButtonItem()
rightItem.customView = button
self.navigationItem.rightBarButtonItem = rightItem
let backButton = UIBarButtonItem(title: "", style: UIBarButtonItemStyle.Plain, target: navigationController, action: nil)
navigationItem.leftBarButtonItem = backButton
}
override func viewWillAppear(animated: Bool) {
let backButton = UIBarButtonItem(title: "", style: UIBarButtonItemStyle.Plain, target: navigationController, action: nil)
navigationItem.leftBarButtonItem = backButton
}
答案 4 :(得分:6)
尝试添加此功能,这对我有用
navigationItem.hidesBackButton = true
答案 5 :(得分:1)
这对我有用:
override func viewWillAppear(animated: Bool)
{
super.viewWillAppear(animated)
self.tabBarController?.navigationItem.hidesBackButton = true
}
答案 6 :(得分:1)
当我在init()中设置它而不是viewDidLoad时,为我工作。奇怪但是
答案 7 :(得分:0)
在XCode 11中(可能会更快,不确定),如果您不想通过编程方式进行操作,也可以取消选中情节提要编辑器中“属性检查器”选项卡下的框。