UIToolbar setBackgroundColor не полностью меняет цвет
Я пытаюсь установить цвет фона UIToolBar
.
Я попытался выбрать цвет из IB Attribute Inspector и попытался установить его программно с помощью setBackgroundColor:[UIColor ...]
.
Оба решения работают, но только частично: цвет смешивает что-то вроде 50% с белым, а панель инструментов очень светлая... не показывает цвет, который я на самом деле выбрал, но гораздо более легкую его версию.
Как я могу выбрать UIToolBar
фактического цвета, который я выбираю?
Это, вероятно, очень просто решить, но я не могу найти способ и не могу найти ответы онлайн.
Ответы
Ответ 1
Напишите ниже код в viewDidLoad
self.navigationController.toolbar.barTintColor = [UIColor redColor];
В качестве фона панели инструментов будет установлен красный цвет.
Reference link
https://web.archive.org/web/20160321155823/https://developer.apple.com/library/ios/documentation/userexperience/conceptual/TransitionGuide/Bars.html#//apple_ref/doc/uid/TP40013174-CH8-SW5
В нем говорилось, что Use barTintColor to tint the bar background
.
![enter image description here]()
Ответ 2
В iOS 7 вам нужно установить свойство barTintColor -
UIToolbar *doneToolbar=[[UIToolbar alloc]initWithFrame:CGRectMake(0, 584, 320, 44)];
doneToolbar.translucent=NO;
doneToolbar.barTintColor=[UIColor redColor];
[self.view addSubview:doneToolbar];
Я использовал его в своем рабочем состоянии...
Ответ 3
В дополнение к ответу 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 specified above
self.navigationController.toolbar.translucent = false;
Ответ 4
UIToolbar * numberToolbar = [[UIToolbar alloc] initWithFrame: CGRectMake (0, 0, 320, 50)];
numberToolbar.backgroundcolor = [UIColor redcolor]; numberToolbar.items = [NSArray arrayWithObjects: [[UIBarButtonItem alloc] initWithTitle: @ "Очистить" стиль: UIBarButtonItemStyleBordered
ноль];
[numberToolbar sizeToFit];
numberTextField.inputAccessoryView = numberToolbar;
Ответ 5
В приложении:
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
Попробуйте это на IOS 10:
let dummyToolbar = UIToolbar()
dummyToolbar.barTintColor = .lightGray
dummyToolbar.sizeToFit() // without this line it doesn't work