【问题标题】:Swift / iOS - Preserve UINavigationItem when pushing new view controllerSwift / iOS - 推送新视图控制器时保留 UINavigationItem
【发布时间】:2019-04-23 04:11:33
【问题描述】:

在 swift 4 中是否有一种干净的方法可以在从一个 UIViewController 推送到另一个 UIViewController 时显示的导航栏中保留完全相同的UINavigationItems

这意味着当新的视图控制器被推入堆栈时,我希望导航栏保持原样(所有相同的项目)

【问题讨论】:

    标签: ios swift uinavigationcontroller uinavigationbar uinavigationitem


    【解决方案1】:

    其实已经很久了。只需将 rootViewController 或 currentVC 设置为 UINavigationBar 的委托。

     class RootVC :  UIViewController, UINavigationBarDelegate{
    
    
       func navigationBar(_ navigationBar: UINavigationBar, shouldPush item: UINavigationItem) -> Bool{
        return false;
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
        navigationController?.navigationBar.delegate = self
    }}
    

    【讨论】:

      猜你喜欢
      • 2016-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多