2010-04-24 88 views
3

我想更改導航欄上的顏色,並且文檔指出不要嘗試更改「alpha」值。那麼,如果所有的構造函數都提供了alpha值,我怎麼能設置一個不是SDK定義值的顏色(例如[UIColor redColor],brownColor等)?我試圖獲得當前的alpha值,但沒有幫助。當我使用自定義顏色時,它會導致導航欄看起來像一個X射線(一個尖銳的,黑色的白色)。爲什麼我無法爲UINavigationBar設置自定義顏色色調?

[self.navigationController.navigationBar setTintColor: [UIColor brownColor]]; 

回答

5

我能成爲這樣一個白癡...好幾個月,我假設值從0..255範圍(即HTML顏色值),但是它們在[0.0 .. 1.0]的範圍內。現在,我設置我的0..255值並將其規範化爲0..1,它按預期工作。我寫了一個簡單的顏色滑塊應用程序,當我調試它時,是我意識到我的錯誤。

0

試試這個:

現在時最初創建的UINavigationController

MyNavigationController *navigationController = [[MyNavigationController alloc] init]; 
[[navigationController navigationBar] setTintColor:[UIColor redColor]]; 
相關問題