【问题标题】:UINavigationController inside UITabBarController - Change UITabBar background colorUITabBarController 内的 UINavigationController - 更改 UITabBar 背景颜色
【发布时间】:2014-07-15 18:23:23
【问题描述】:

我在更改UITabBar 的背景颜色时遇到问题。我有一个UITabBarControllerUINavigationController 里面有一个根视图。

标签栏控制器>导航控制器>根视图

UITabBarController 类中,我有以下代码:

[self.UITabBarHome setBackgroundColor:[UIColor greenColor]];

颜色适用于我的UITabBar,直到我单击指向我的UINavigationControllerUITabBarItem(组)。当我只点击这个项目时,颜色会变为默认颜色。如何避免这种情况?

【问题讨论】:

    标签: ios ios7 uinavigationcontroller uitabbarcontroller setbackground


    【解决方案1】:

    您可以在您的应用中定位 UITabBar 的每个实例:

    [[UITabBar appearance] setTintColor:[UIColor redColor]];

    其他属性:

    UIColor *tintColor; UIColor *selectedImageTintColor; UIImage *backgroundImage; UIImage *selectionIndicatorImage;

    【讨论】:

    • 同样的事情也会发生。我曾尝试在 appDelegate 中设置颜色。这就像 UINavitagionController “实例化”一个新的 UITabBar,但具有相同的项目。
    【解决方案2】:

    我通过在 UINavigationController 的根视图控制器中添加一个 UITabBar 解决了这个问题

    【讨论】:

    • 导航控制器内的UITabBar?你确定这就是你想要的吗?
    • 我的初始视图控制器是一个具有三个视图的 tabBarController 和一个具有三个视图的 navigationController。我添加了tabbar来解决后台的问题,可能是我解释错了。就像这个例子:developer.apple.com/library/ios/documentation/WindowsViews/…
    【解决方案3】:
    viewController.tabBarController?.tabBar.tintColor = .red
    

    注意-> viewController 是你的 ViewController 的一个实例

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-08
      • 1970-01-01
      相关资源
      最近更新 更多