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

时间:2018-05-05 06:56:41

标签: ios uinavigationcontroller swift4 footer xcode9

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

所以我默认使用页眉和页脚。所以我有两个问题,

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

  2. 如果我无法为页脚添加颜色,那么我想使用下面的代码隐藏该页脚

    override func viewWillAppear(animated: Bool)
    {
       self.navigationController?.navigationBarHidden = true
    }
    
  3. 但是通过这种颜色我只能隐藏标题而不是页脚。那么如何使用代码隐藏页脚,以便创建自定义页脚我想要的内容。

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

1 个答案:

答案 0 :(得分:5)

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

  1. 您的导航控制器嵌入在TabBarController
  2. 或者您已取消隐藏导航控制器的工具栏。
  3. 现在,如果您使用TabBarController作为导航控制器的父级,您只需使用以下代码隐藏页脚:

    self.tabBarController?.tabBar.isHidden = true
    

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

    navigationController?.setToolbarHidden(true, animated: false)
    

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

    navigationController?.toolbar.barTintColor = .black