首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >backBarButtonItem不能隐藏

backBarButtonItem不能隐藏
EN

Stack Overflow用户
提问于 2018-11-12 16:52:05
回答 3查看 113关注 0票数 0

这个问题出现在iOS9和iOS10上。当我提供一个navigationviewController时,backBarButtonItem不能隐藏,但在超类中我设置了

代码语言:javascript
复制
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时,我不能得到这个问题

EN

回答 3

Stack Overflow用户

发布于 2018-11-12 17:07:48

将此行self.navigationItem.setHidesBackButton(true, animated: false)添加到视图控制器上的viewDidLoad()中,您想要在其中隐藏backbar按钮项。

票数 3
EN

Stack Overflow用户

发布于 2018-11-12 17:57:44

viewDidLoad()viewWillAppear()中添加以下行:

代码语言:javascript
复制
self.navigationItem.hidesBackButton = true

代码语言:javascript
复制
self.navigationItem.setHidesBackButton(true, animated: false)
票数 1
EN

Stack Overflow用户

发布于 2018-11-12 18:24:35

我将建议使用任何其他技术来显示viewController,而不是将其推入导航控制器中。它将隐藏后退按钮,也可以很容易地解除从您的主ViewController服务的目的。使用present情态或present as popover,然后相应地在你完成工作后将其删除。如果你不愿意这样做,那么我认为上面的答案将会满足你的目的。但我对你的问题的建议是以不同的方式呈现视图控制器,这也有助于保持代码的整洁和更容易理解。如果你想讨论它或了解更多关于我的方法,请留言。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53258612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档