it-swarm.com.ru

странное несоответствие цвета UITabBar в iOS7

Я использую свойства tintColor и barTintColor для iOS 7, чтобы закрасить UITabBar этим кодом в подклассе UITabBarController:

[[UITabBar appearance] setBarTintColor:[UIColor colorWithRed:123/255.0 green:47/255.0 blue:85/255.0 alpha:1]];
[[UITabBar appearance] setTintColor:[UIColor colorWithRed:227/255.0 green:180/255.0 blue:204/255.0 alpha:1]];

На трех экранах цвет - это то, что я хочу (только два изображения, иллюстрирующие это):

home screenfeedback screen

Один экран, цвет странно светлее. Этот экран является UIWebView.

webview screen

Затем на четвертом экране цвет СУПЕР-светлый. Этот экран - единственный, чтобы использовать раскадровку - все остальное сделано программно.

settings screen

Что я делаю неправильно? Имеет ли тот факт, что некорректно работающие экраны являются UIWebView и раскадровка имеет какое-либо отношение к тому, почему они плохо себя ведут? И как мне их починить? Я возился с альфой бара, но это ничего не меняет.

Спасибо за вашу помощь.

15
Joel Derfner

Вы видите прозрачность панели вкладок ... т.е. фоновое изображение расплывается и размыто. Если вы хотите отключить это, вы можете сделать:

[tabBar setTranslucent:NO]

на вашей вкладке.

На ваших двух верхних изображениях мне неясно, является ли базовый вид контроллера представления Edge-to-Edge, то есть ваши верхние два изображения должны выглядят как четвертое, поскольку оба имеют розовый фон. В любом случае, setTranslucent: NO должен сделать их все похожими на верхнее изображение.

22
CSmith

Вы также можете снять флажок "Полупрозрачный" в Инспекторе атрибутов: enter image description here

0
karenms