簡體   English   中英

以編程方式更改標簽欄和導航欄的顏色

[英]Change the color of tabbar and navigation bar programmatically

UITabBarController的默認顏色為黑色,而UINavigationController的默認顏色為藍色。 我需要將此顏色更改為其他顏色。 如何以編程方式執行此操作?

我想我發現了如何更改導航欄的顏色,但是我不理解代碼[navBorder setBackgroundColor:[UIColor colorWithWhite:200.0f/255.f alpha:0.8f]];

我不明白colorWithWhite什么作用?

無論如何,如何為UITabBarController添加顏色?

要在iOS 5中更改顏色,請設置UITabBarController的tabBartintColor 這是我這樣做的一個示例:

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

(您可以下載該項目,然后親自嘗試。)

colorWithWhite:alpha:是用於設置灰色(可能具有透明度)的快捷方式。

要以編程方式更改UITabBar的顏色,可以使用tintcolor屬性,以下代碼行將幫助您

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

更改標簽欄顏色

tabBar.tintColor = [UIColor greenColor];

iOS 5中有一個外觀代理

UIAppearance.h class

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

@end

#define UI_APPEARANCE_SELECTOR

這將幫助您隨意更改控件的外觀...您還可以觀看WWDC 2011會話視頻的“自定義UIKit控件的外觀”。

例:-

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

它將導航欄圖像更改為應用程序資源文件夾中的navBackground圖像,並將導航欄指標設置為默認值。

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

當包含在此層次結構中時,它將按鈕的標題顏色設置為紅色。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM