UIToolBar tintColor不适用于ios7

时间:2014-01-25 05:14:24

标签: ios iphone objective-c uitoolbar

我在我的应用程序中创建了一个蓝色的UIToolBar,当我将其构建为iOS 6时它显示为蓝色但是现在我已经将构建更新到iOS 7,它变成了白色?

这是我的代码。

getProjectListToolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0.0, 20.0, screenHeight+20, 44)];
getProjectListToolBar.tintColor = [UIColor colorWithRed:85.0/255.0 green:130.0/255.0 blue:186.0/255.0 alpha:1.0];

getProjectListToolBar.translucent = NO;
getProjectListToolBar.layer.borderWidth = 0.0;
getProjectListToolBar.backgroundColor = [UIColor clearColor];
getProjectListToolBar.layer.borderWidth = 0.5;
getProjectListToolBar.layer.borderColor = [UIColor darkGrayColor].CGColor;
[self.view insertSubview:getProjectListToolBar aboveSubview:self.view];

再次获得蓝色的任何帮助都将不胜感激。

3 个答案:

答案 0 :(得分:8)

你只需要设置

getProjectListToolBar.translucent = NO;

在iOS 7中UITabBarUINavigationBar具有translucent属性,您需要设置translucent = NO,仅供参考。

<强> EDITED

[getProjectListToolBar setBarTintColor:[UIColor colorWithRed:85.0/255.0 green:130.0/255.0 blue:186.0/255.0 alpha:1.0]];

因为在iOS 7中,您需要从this documentation.

设置barTintColor而不是tintColor

我在我的演示项目中尝试使用您的代码,它对我有用。

答案 1 :(得分:2)

在ios7中有2个属性:

  1. tintColor:将设置工具栏项的颜色
  2. barTintColor:将设置工具栏的颜色
  3. 使用barTintColor。

答案 2 :(得分:0)

请从您的代码中删除:

getProjectListToolBar.tintColor = [UIColor colorWithRed:85.0/255.0  green:130.0/255.0 blue:186.0/255.0 alpha:1.0];

并添加行

[getProjectListToolBar setBarTintColor:[UIColor colorWithRed:85.0/255.0 green:130.0/255.0 blue:186.0/255.0 alpha:1.0]];

并检查'getProjectListToolBar'框架坐标