Как изменить цвет подсветки iOS7
Я разработал приложение для iOS7, у которого есть этот дизайн
![enter image description here]()
Как вы можете видеть там синюю стрелку для всего моего BackButton (используя UINavigationController и segues), я хочу сделать их красными, это мой код:
[UIBarButtonItem appearance]setTintColor:(UIColorFromRGB(toolbarTintColor))];
[[UIBarButtonItem appearance]setTitleTextAttributes:textAtributesDictionaryNavBarButtons forState:UIControlStateNormal];
но результаты применимы только ко всем другим кнопкам, любая помощь, которую я ценю
заблаговременно за поддержку
Ответы
Ответ 1
Свойство цвета оттенка на панели навигации определяет цвет текста его элементов кнопки панели в iOS 7. Код, который вы ищете, выглядит примерно так:
[[UINavigationBar appearance] setTintColor:[UIColor redColor]];
и, конечно, заменяя [UIColor redColor]
любым цветом, который вы хотите.
Ответ 2
Поместите этот код в свой делегат приложения:
Objective-C
[self.window setTintColor:[UIColor redColor]];
Swift
self.window?.tintColor = UIColor.redColor()
Ответ 3
Если вы не хотите менять цвет оттенка во всем приложении и просто хотите сделать это на одной панели навигации, сделайте следующее:
self.navigationController.navigationBar.tintColor = [UIColor redColor];
Ответ 4
Если вам нужна быстрая версия.
UINavigationBar.appearance().tintColor = UIColor.whiteColor()
Кроме того, если вы хотите применить этот стиль ко всем вашим навигационным контроллерам. Поместите этот код в ваше приложение didFinishLaunchingWithOptions метод в AppDelegate
Ответ 5
Swift:
self.navigationController?.navigationBar.tintColor = UIColor.grayColor()
Ответ 6
- Если вы используете раскадровку, тогда вы должны добавить атрибут, определенный пользователем для ключевого слова tintColor, в панели инспектора класса.
- Поскольку статическое свойство tintColor было удалено в последней версии Interface Builder.
![click '+', добавить tintColor в KeyPath, установить цвет Type и добавить свой цвет.]()
Ответ 7
Вы можете установить его непосредственно в IB:
![введите описание изображения здесь]()
Ответ 8
-(void)viewDidAppear:(BOOL)animated
{
//set back button color
[[UIBarButtonItem appearanceWhenContainedIn:[UINavigationBar class], nil] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor redColor], NSForegroundColorAttributeName,nil] forState:UIControlStateNormal];
//set back button arrow color
[self.navigationController.navigationBar setTintColor:[UIColor whiteColor]];
}