0

在iPhone和iOS 9.0中,我看到奇怪的東西與全球色調顏色與特定的顏色被設置。iOS如何保持導航項顏色不變時全局色調設置?

在AppDelegate中設置以下代碼後,導航項目顏色在顯示警報後發生變化。

window!.tintColor = UIColor.greenColor() 

    // per docs "The tint color to apply to the navigation items and bar button items." 
    UINavigationBar.appearance().tintColor = UIColor.redColor() 

    UITabBar.appearance().tintColor = UIColor.yellowColor() 

我希望導航項目的顏色保持我設置的顏色。 (顏色和屏幕截圖來自我創建的用於顯示問題的臨時應用程序。)

請注意以下「主頁」導航項目是如何變爲綠色的,即綠色,即App Delegate中設置的全局色調顏色。

Home Screen

First One

Second One

Alert Launched

First One With Changed Navigation Item Color

爲什麼綠色 「家」 的變化? 如何避免這樣做?

代碼是在這裏:https://bitbucket.org/finneycanhelp/tintcolorwhat

+1

你是否嘗試在不使用外觀協議的情況下設置UINavigationBar的'tintColor'顯式? 'myNavigationBar.tintColor = [UIColor blueColor]'? – psci

+0

這是一個很好的問題,psci。由於實際的應用程序(不是這個示例應用程序),由許多視圖控制器與導航控制器組成,我們需要使用外觀協議。 – finneycanhelp

+0

我開始懷疑是否只是使用故事板設置全局色調是答案。我想確保我*不*編程設置。我會在真實應用程序中檢查這個選項。 **我們非常喜歡編程方法**,因爲我們希望跨應用程序具有一致的外觀和感覺,因此這就是我們使用代碼的原因。 – finneycanhelp

回答

0

設置使用故事板全球色調的顏色,而不是編程方式似乎是一個可行的解決方案。

相關問題