如何在swift项目中隐藏所有视图控制器的页脚附加我的导航控制器?

mab*_*mab 0 footer uinavigationcontroller ios swift4 xcode9

我正在使用swift项目,它使用Xcode 9和swift 4.1.我创建了一个导航视图控制器,然后创建了其他视图控制器并附加了导航视图控制器.

所以我默认有页眉和页脚.所以我有两个问题,

  1. 现在我想要更改除白色之外的页脚颜色,但是当我为其编写任何代码时,它会在页脚后面缩小,我看不到任何没有白色的颜色.我如何为页脚添加任何颜色?

  2. 如果我无法为页脚赋予颜色,那么我想使用波纹管代码隐藏该页脚

    override func viewWillAppear(animated: Bool)
    {
       self.navigationController?.navigationBarHidden = true
    }
    
    Run Code Online (Sandbox Code Playgroud)

但是通过这种颜色,我只能隐藏页眉而不是页脚.所以我如何使用代码隐藏页脚,所以我创建了自定义页脚我想要的.

如何在swift 4.1中解决上述问题?

Mee*_*riq 5

我不知道这里的页脚是什么意思,因为默认情况下,当您将viewcontroller嵌入导航控制器时,它不会显示任何页脚.你在那里做两件事:

  1. 您的导航控制器嵌入在TabBarController中
  2. 或者您已取消隐藏导航控制器的工具栏.

现在,如果您使用TabBarController作为导航控制器的父级,您只需使用以下代码来隐藏页脚:

self.tabBarController?.tabBar.isHidden = true
Run Code Online (Sandbox Code Playgroud)

如果您使用的是导航控制器的工具栏(默认情况下是隐藏的).您可以使用以下代码隐藏它:

navigationController?.setToolbarHidden(true, animated: false)
Run Code Online (Sandbox Code Playgroud)

并且要更改工具栏的颜色,您只需使用:

navigationController?.toolbar.barTintColor = .black
Run Code Online (Sandbox Code Playgroud)