我试图设置UIToolBar
的背景颜色。
我尝试从IB的属性检查器中选择颜色,并尝试通过setBackgroundColor:[UIColor ...]
以编程方式进行设置。
两种解决方案都有效,但只是部分解决方案:颜色混合了50%的白色和工具栏非常轻......没有显示我实际选择的颜色,但它的颜色要轻得多。< / p>
我如何选择UIToolBar
我选择的实际颜色?
它可能很容易解决,但我找不到办法,也无法在线找到答案。
答案 0 :(得分:99)
在viewDidLoad
self.navigationController.toolbar.barTintColor = [UIColor redColor];
它会将红色设置为工具栏背景。
在其中他们说Use barTintColor to tint the bar background
。
答案 1 :(得分:22)
在iOS 7中,您需要设置 barTintColor 属性 -
UIToolbar *doneToolbar=[[UIToolbar alloc]initWithFrame:CGRectMake(0, 584, 320, 44)];
doneToolbar.translucent=NO;
doneToolbar.barTintColor=[UIColor redColor];
[self.view addSubview:doneToolbar];
我用它工作正常......
答案 2 :(得分:4)
除了Jageen的回答,您还必须将半透明属性设置为false。否则,颜色的饱和度和色调将略微低于barTintColor指定的颜色。
// Sets to a specific color
self.navigationController.toolbar.barTintColor = UIColor colorWithRed:6.0 / 255.0 green:52.0 / 255.0 blue:90.0 / 255.0 alpha:1.0];
// Without this, color will be faded slightly and not exactly what's specified above
self.navigationController.toolbar.translucent = false;
答案 3 :(得分:1)
在IOS 10上试试这个:
let dummyToolbar = UIToolbar()
dummyToolbar.barTintColor = .lightGray
dummyToolbar.sizeToFit() // without this line it doesn't work
答案 4 :(得分:0)
UIToolbar * numberToolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0,0,320,50)];
numberToolbar.backgroundcolor = [UIColor redcolor]; numberToolbar.items = [NSArray arrayWithObjects: [[UIBarButtonItem alloc] initWithTitle:@“Clear”样式:UIBarButtonItemStyleBordered
零];
[numberToolbar sizeToFit];
numberTextField.inputAccessoryView = numberToolbar;
答案 5 :(得分:0)
整个应用程序:
UIToolbar.appearance().barTintColor = TOOLBAR_BACKGROUND_COLOR
if let font = UIFont(name: "AvenirNext-DemiBold", size: 15) {
UIBarButtonItem.appearance().setTitleTextAttributes([NSFontAttributeName: font,NSForegroundColorAttributeName:TOOLBAR_TITLE_COLOR], forState: UIControlState.Normal)
}
答案 6 :(得分:0)
快速4 +:
toolBar.barTintColor = UIColor(red: 92/255, green: 216/255, blue: 255/255, alpha: 1)
toolBar.isTranslucent = false
toolBar.sizeToFit()