简体   繁体   中英

Color of UIToolbar not changing

I have created a UIToolbar. I am trying to give it black color using:

toolbar.barStyle = UIBarStyleBlackOpaque;

or

toolbar's background property. But its color does not change in either case.

How can I change it?

IN iOS 7 you need to set the barTintColor Property-

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

I have used it its working fine...

Have you tried setting the tint property on UIToolbar? ie:

- (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

On IOS 10, apparently we also need to call sizeToFit on the UIToolBar to change the background color:

This worked for me:

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

Use this after you allocate and initialize you toolbar object:

toolbar.tintColor = [UIColor darkGrayColor];

Hope this helps you.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM