Установить цвет фона для UINavigationBar
Я хочу развиваться UINavigationBar
а также установить цвет фона для этого. Я создал UINavigationBar
но у меня проблема с установкой backgroundcolor. Кто-нибудь, пожалуйста, помогите мне. Благодарю.
10 ответов
[self.navigationController.navigationBar setBackgroundColor:[UIColor redColor]];
Попробуй вот так. Я думаю, что это будет полезно для вас.
Редактировать: обновил код для фактической компиляции.
В новых iOs вот как это работает:
self.navigationController.navigationBar.barStyle = UIBarStyleBlackOpaque;
self.navigationController.navigationBar.barTintColor =[UIColor colorAzulNavegacion];
Я должен искать это каждый раз, поэтому добавляю свой ответ здесь (Свифт). Код ниже устанавливает это для всех панелей навигации в приложении. Вы можете установить каждый из них на отдельных панелях навигации, если хотите.
Вы можете установить полупрозрачность, цвет текста заголовка, цвет фона (это называется barTintColor, спасибо, Apple!) И цвет переднего плана элемента панели, например:
// Title text color Black => Text appears in white
UINavigationBar.appearance().barStyle = UIBarStyle.Black
// Translucency; false == opaque
UINavigationBar.appearance().translucent = false
// BACKGROUND color of nav bar
UINavigationBar.appearance().barTintColor = UIColor.redColor()
// Foreground color of bar button item text, e.g. "< Back", "Done", and so on.
UINavigationBar.appearance().tintColor = UIColor.whiteColor()
Вы можете установить цвет оттенка с помощью navbar.tintColor = [UIColor redColor];
Смотрите ссылку здесь: Apple Docs
self.navigationController?.navigationBar.translucent = false
self.navigationController?.navigationBar.barTintColor = UIColor.redColor ()
self.navigationController?.navigationBar.barStyle = UIBarStyle.BlackTranslucent
Вы можете настроить UINavigationBar
со следующими свойствами:
@property(nonatomic, assign) UIBarStyle barStyle
@property(nonatomic, retain) UIColor *tintColor
setBackgroundImage:forBarMetrics:
@property(nonatomic, copy) UIColor *backgroundColor
Для получения дополнительных методов и свойств, пожалуйста, проверьте ссылку на класс UINavigationBar
а также UIView
self.navigationController.navigationBar.tintColor = [UIColor blackColor];
Здесь речь идет о том, чтобы сделать что-то полезное. В этом случае программным образом создается/настраивается элемент и элемент панели навигации и устанавливается черный фон, а заголовок светло-серый.
Свифт 5, iOS 15
@objc func addButtonPushed() {
print("Add button!")
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
let rightButton = UIBarButtonItem(image: UIImage(systemName: "plus"), style: .plain,
target:self, action: #selector(addButtonPushed))
let standaloneItem = UINavigationItem()
standaloneItem.title = "Herding Cats"
standaloneItem.rightBarButtonItem = rightButton
navBar.items = [standaloneItem]
navBar.delegate = self
navBar.barStyle = UIBarStyle.default
navBar.isTranslucent = true
navBar.barTintColor = .black
navBar.titleTextAttributes = [.foregroundColor: UIColor.lightGray]
.
.
.
}