2014-03-14 106 views
4

在iOS7.1中升級Xcode後,我的導航欄和UIToolbar按鈕沒有顯示正確的顏色。iOS 7.1 UINavigationbar和UIToolbar

當視圖第一次出現時,UIToolbar按鈕都具有正確的默認藍色,當我轉到下一頁/視圖並返回到前一視圖時,工具欄按鈕以灰色顯示。

我曾嘗試在viewDidLoadviewWillAppear中添加藍色,但沒有運氣。有人可以幫幫我嗎?

謝謝。

回答

0

您可以一次爲某些組件設置主題,它們將在整個應用程序中使用。在我的應用程序委託中,我在應用程序初始化時創建了一個名爲setupTheme的函數,並且它只是這樣做的 - 通過說[[UINavigationBar appearance] setBarTintColor:]來設置應用程序的「主題」,該函數實際上設置顏色導航欄的整個應用程序的任何導航控制器。以下是一個應用程序示例,它設置了一些可重用的基本組件,以便您在使用它們時隨時可以使用正確的主題。

- (void)setupTheme { 
    // get our theme colors 
    UIColor *primaryThemeColor = [UIColor blueColor]; 
    UIColor *secondaryThemeColor = [UIColor whiteColor]; 

    // nav bar 
    [[UINavigationBar appearance] setBarTintColor:primaryThemeColor]; 
    [[UINavigationBar appearance] setTintColor:secondaryThemeColor]; 
    [[UINavigationBar appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName:secondaryThemeColor}]; 

    // tab bar 
    [[UITabBar appearance] setTintColor:primaryThemeColor]; 

    // switches 
    [[UISwitch appearance] setOnTintColor:primaryThemeColor]; 

    // search bar 
    [[UIBarButtonItem appearanceWhenContainedIn:[UISearchBar class], nil] setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor blackColor]} forState:UIControlStateNormal]; 
} 

在細節退房了iOS 7的過渡指南瞭解更詳細https://developer.apple.com/library/iOs/documentation/UserExperience/Conceptual/TransitionGuide/Bars.html#//apple_ref/doc/uid/TP40013174-CH8-SW1