我一直试图删除"编辑"按钮比显示在"更多"的右上角UITabBarController的一部分,通过向其添加TabBarController类并在其中执行以下操作:
class TabBarController: UITabBarController, UINavigationControllerDelegate, UITabBarControllerDelegate {
override func viewDidLoad() {
super.viewDidLoad()
self.moreNavigationController.delegate = self
self.customizableViewControllers = nil
self.moreNavigationController.navigationItem.rightBarButtonItem?.isEnabled = false
self.moreNavigationController.navigationBar.topItem?.rightBarButtonItem = nil
}
}
但这不起作用。编辑按钮仍然显示。
如何删除此修改按钮?
答案 0 :(得分:1)
为您的主要UITabBarController设置一个类。然后在viewdidload中,指定所有控制器都不可自定义。
class MainTabBarController: UITabBarController {
override func viewDidLoad() {
super.viewDidLoad()
self.customizableViewControllers = []
}
}
答案 1 :(得分:0)
answer in this post帮我解决了@Surjeet的建议。
对于Swift 3,这里的人是需要添加的功能,以便删除按钮:
func navigationController(_ navigationController: UINavigationController, willShow viewController: UIViewController, animated: Bool) {
let morenavbar = navigationController.navigationBar
if let morenavitem = morenavbar.topItem {
morenavitem.rightBarButtonItem = nil
}
}