UIToolBar
の背景色を設定しようとしています。 IBの属性インスペクターから色を選択してみて、setBackgroundColor:[UIColor ...]
。
両方のソリューションは機能しますが、部分的にしかありません:色は50%のようなものと白をブレンドし、ツールバーは非常に明るいです...実際に選択した色は表示されませんが、より明るいバージョンです。
選択している実際の色のUIToolBar
を取得するにはどうすればよいですか?おそらく非常に簡単に解決できますが、私は方法を見つけることができず、オンラインでも答えを見つけることができません。
viewDidLoad
に以下のコードを記述します
self.navigationController.toolbar.barTintColor = [UIColor redColor];
ツールバーの背景として赤色が設定されます。
その中で彼らはUse barTintColor to tint the bar background
。
IOS 7では、barTintColor Property-を設定する必要があります
UIToolbar *doneToolbar=[[UIToolbar alloc]initWithFrame:CGRectMake(0, 584, 320, 44)];
doneToolbar.translucent=NO;
doneToolbar.barTintColor=[UIColor redColor];
[self.view addSubview:doneToolbar];
私はそれをうまく使っています...
Jageenの答えに加えて、translucentプロパティを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;
IOS 10:
let dummyToolbar = UIToolbar()
dummyToolbar.barTintColor = .lightGray
dummyToolbar.sizeToFit() // without this line it doesn't work
アプリ全体:
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)
}
UIToolbar * numberToolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0、0、320、50)];
numberToolbar.backgroundcolor = [UIColor redcolor]; numberToolbar.items = [NSArray arrayWithObjects:[[UIBarButtonItem alloc] initWithTitle:@ "Clear"スタイル:UIBarButtonItemStyleBordered
nil];
[numberToolbar sizeToFit];
numberTextField.inputAccessoryView = numberToolbar;