UIToolbar的颜色没有变化

时间:2011-04-07 13:12:58

标签: iphone objective-c uitoolbar tint

我创建了一个UIToolbar。我试图用以下颜色给它黑色:

toolbar.barStyle = UIBarStyleBlackOpaque;

工具栏的background属性。但它的颜色在两种情况下都没有变化。

如何更改?

4 个答案:

答案 0 :(得分:14)

在iOS 7中,您需要设置 barTintColor 属性 -

UIToolbar *doneToolbar=[[UIToolbar alloc]initWithFrame:CGRectMake(0, 584, 320, 44)];
doneToolbar.translucent=NO;
doneToolbar.barTintColor=[UIColor redColor];
[self.view addSubview:doneToolbar];

我用它工作正常......

答案 1 :(得分:7)

您是否尝试在UIToolbar上设置色调属性?即:

- (void)viewDidLoad {
  [super viewDidLoad];
  UIToolbar *toolbar=[[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 46)];
  toolbar.tintColor=[UIColor redColor];
  [self.view addSubview:toolbar];
  [toolbar release];
}

Detailed in the apple docs

答案 2 :(得分:0)

分配并初始化工具栏对象后使用此选项:

toolbar.tintColor = [UIColor darkGrayColor];

希望这会对你有所帮助。

答案 3 :(得分:0)

在IOS 10上,显然我们还需要调用sizeToFit上的UIToolBar来更改背景颜色:

这对我有用:

let dummyToolbar = UIToolbar()
dummyToolbar.barTintColor = .lightGray
dummyToolbar.sizeToFit() // without this line it doesn't work