这个问题出现在iOS9和iOS10上。当我提供一个navigationviewController时,backBarButtonItem不能隐藏,但在超类中我设置了
override func pushViewController(_ viewController: UIViewController, animated: Bool) {
super.pushViewController(viewController, animated: animated)
viewController.navigationItem.setHidesBackButton(true, animated: false)
let backItem = UIBarButtonItem(image: UIImage(named: "navigationItem_back_img"), style: .plain, target: self, action: #selector(backItemOnClick(_:)))
backItem.title = ""
viewController.navigationItem.leftBarButtonItem = backItem
}

当我按下这个navigationViewController时,我不能得到这个问题
发布于 2018-11-12 17:07:48
将此行self.navigationItem.setHidesBackButton(true, animated: false)添加到视图控制器上的viewDidLoad()中,您想要在其中隐藏backbar按钮项。
发布于 2018-11-12 17:57:44
在viewDidLoad()或viewWillAppear()中添加以下行:
self.navigationItem.hidesBackButton = true或
self.navigationItem.setHidesBackButton(true, animated: false)发布于 2018-11-12 18:24:35
我将建议使用任何其他技术来显示viewController,而不是将其推入导航控制器中。它将隐藏后退按钮,也可以很容易地解除从您的主ViewController服务的目的。使用present情态或present as popover,然后相应地在你完成工作后将其删除。如果你不愿意这样做,那么我认为上面的答案将会满足你的目的。但我对你的问题的建议是以不同的方式呈现视图控制器,这也有助于保持代码的整洁和更容易理解。如果你想讨论它或了解更多关于我的方法,请留言。
https://stackoverflow.com/questions/53258612
复制相似问题