【问题标题】:Viewcontroller's navigation bar is added below navigation controller's navigation bar inside tab bar controllerViewcontroller 的导航栏添加在标签栏控制器内导航控制器的导航栏下方
【发布时间】:2020-05-24 15:42:26
【问题描述】:

我有一个标签栏控制器,它有一个带有视图控制器的导航控制器。 由于某些未知原因,视图控制器的导航栏看起来并不像往常一样。而是将视图控制器的导航栏添加到导航控制器的下方。

当我在标签栏控制器显示之前查看嵌入在第一个导航控制器中的视图控制器时,它按预期工作。

这就是它应该的样子

还有这个

现在,当我转到具有嵌入视图控制器的新导航控制器的选项卡栏控制器时,它看起来像这样:

我不希望在导航控制器提供的导航栏下方有一个额外的导航栏。 我希望视图控制器的标题和项目与导航控制器合并。 所以最终结果应该显示一行带有后退按钮、标题和栏按钮项(搜索图像)

我错过了什么?

我也尝试以编程方式添加导航项,但似乎没有任何效果。

Project on github

我的代码

    //
//  SideViewController.swift
//  Sample
//
//  Created by  on 08.02.20.
//  Copyright © 2020 . All rights reserved.
//

import UIKit

class SideViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        title = "Search"

    }
    @objc func action(){

    }

    /*
    // MARK: - Navigation

    // In a storyboard-based application, you will often want to do a little preparation before navigation
    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        // Get the new view controller using segue.destination.
        // Pass the selected object to the new view controller.
    }
    */

}

【问题讨论】:

    标签: ios uinavigationcontroller uitabbarcontroller swift5 storyboard-reference


    【解决方案1】:

    我发现有两种方法可以解决此问题,即通过模态显示标签栏控制器或在视图加载时隐藏标签栏控制器的导航栏。

    第一个解决方案可以这样实现:

    1. 打开 Main.storyboard。
    2. 选择此情节提要中的最后一个转场(导航到侧情节提要的转场)。
    3. 确保您选择了属性检查器。现在将 Kind 属性更改为 Present Modally 并将 Presentation 属性更改为 Full Screen

    第二个解决方案可以这样实现:

    1. 通过选择文件 > 新建 > 文件 > Cocoa Touch Class创建新文件,然后按下一步。
    2. Subclass of: 更改为 UITabBarController 并将您的类命名为对您有意义的任何名称。
    3. 然后在viewDidLoad() 内粘贴此navigationController?.navigationBar.isHidden = true 以隐藏当前导航栏。
    4. 通过选择 TabViewController 并将 Class 属性更改为 Identity Inspector 中的类名,将您的类分配给 Side 故事板中的 TabViewController。当您输入班级名称时,它应该会自动完成。按 Enter 确保您确认更改。

    记住只做这两个解决方案中的一个。哪一个取决于您的需求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-14
      • 1970-01-01
      • 1970-01-01
      • 2019-03-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多