按下“更多”按钮时,如何在标签栏控制器内设置导航栏颜色和单元格大小?

Posted

技术标签:

【中文标题】按下“更多”按钮时,如何在标签栏控制器内设置导航栏颜色和单元格大小?【英文标题】:How to set navbar color and size of cells inside a tab bar controller when 'more' button is pressed? 【发布时间】:2016-06-25 18:13:07 【问题描述】:

我目前有一个标签栏控制器,里面有许多导航控制器。我可以在大多数视图控制器中设置导航控制器颜色,除非在选项卡视图控制器(底角选项卡)上按下“更多”按钮时:

按下更多按钮后,它不会转到我创建的视图控制器,而是转到与标签栏关联的某个设置视图控制器:

我正在尝试将这个“更多”选项卡内的导航栏颜色更改为黑色,并将单元格的大小(用于卡片和设置)更改为更大。通常我会在 viewDidLoad 中执行此操作,但由于视图是由选项卡栏创建的,我不确定如何访问它。

【问题讨论】:

【参考方案1】:

想出了改变导航栏的部分答案。我对标签栏进行了子类化,并在 viewDidLoad 中更改了 moreNavigationController 属性,如下所示:

  override func viewDidLoad() 

    moreNavigationController.navigationBar.barStyle = UIBarStyle.BlackOpaque
    moreNavigationController.navigationBar.barTintColor = UIColor.blackColor()
    moreNavigationController.navigationBar.tintColor = UIColor.whiteColor()
  

它能够使导航栏变黑。我还没有找到改变moreNavigationController中单元格大小的方法。

【讨论】:

以上是关于按下“更多”按钮时,如何在标签栏控制器内设置导航栏颜色和单元格大小?的主要内容,如果未能解决你的问题,请参考以下文章

推送视图控制器未出现在标签栏控制器下方

按下标签栏项目时如何关闭视图?

按下导航控制器左栏按钮时如何停止视图消失

可以在标签栏控制器中隐藏导航栏吗?

如何停止加载标签栏项目选择的视图?

当用户在 UIActivityViewController 上点击“更多”时如何设置导航栏按钮?