Измените цвет панели вкладок и панели навигации программно - PullRequest
1 голос
/ 25 декабря 2011

Цвет по умолчанию UITabBarController - черный, а цвет по умолчанию UINavigationController - синий. Мне нужно изменить этот цвет на другой цвет. Как я могу сделать это программно?

Я думаю, что нашел, как изменить цвет панели навигации, но я не понимаю код [navBorder setBackgroundColor:[UIColor colorWithWhite:200.0f/255.f alpha:0.8f]];

Я не понимаю, что делает colorWithWhite

В любом случае, как мне добавить цвет к UITabBarController?

Ответы [ 3 ]

4 голосов
/ 25 декабря 2011

Чтобы изменить цвет в iOS 5, установите tintColor UITabBarController's tabBar. Вот пример того, как я это делаю:

https://github.com/mattneub/Programming-iOS-Book-Examples/blob/master/ch19p533tabBarController/p464p475tabBarController/AppDelegate.m

(Вы можете скачать этот проект и попробовать его сами.)

colorWithWhite:alpha: является ярлыком для установки серого, возможно с прозрачностью.

3 голосов
/ 26 декабря 2011

Для программного изменения цвета UITabBar вы можете использовать свойство tintcolor, следующая строка кода поможет вам

self.navigationController.navigationBar.tintColor= [UIColor redColor];

изменить цвет панели вкладок

tabBar.tintColor = [UIColor greenColor];
1 голос
/ 26 декабря 2011

В iOS есть прокси-сервер внешнего вида 5

UIAppearance.h class

@Protocol UIAppearance <NSObject>
+(id) appearance ;
+(id) appearanceWhenContainedIn:(Class <UIAppearanceContainer> containerClass,..)
...

@end

#define UI_APPEARANCE_SELECTOR

Это поможет вам изменять внешний вид элементов управления в зависимости от того, что вы хотите ... Вы также можете посмотреть видеоролик сессий WWDC 2011 "Настройка внешнего вида"UIKit Controls "для более.

пример: -

[[UINavigationBar appeareance] setBackGroundImage:[UIImage imageNamed:@"navBackground"] forBarMetrics:UIBarMetricsDefault];

Это изменяет изображение панели навигации, чтобы быть изображением navBackground в папке ресурсов приложения и устанавливает параметры панели навигации по умолчанию.

[[UIButton ButtonWhenContainedIn:[CustomViewController Class],[UINavigationController Class],nil] setTitleColor:[UIColor redColor] forControlState:UIControlStateNormal];

Будет установлен красный цвет заголовка кнопки, если он содержится в этой иерархии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...