2013-09-19 1 views
2

Навигационная панель моего приложения, которая является синим, внезапно изменилась на черный/серый на iOS 7. Мое приложение не было обновлено до iOS 7, но не перекомпилировано с использованием Xcode 5. Я ожидал, что на iOS 7 будет выглядеть точно так же, как режим совместимости для старше скомпилированный iOS 6, но я думаю, я был неправ?Navigator tintColor не соблюдается в режиме совместимости iOS 7 для приложения iOS 6?

Это ошибка или это предполагаемое поведение?

Для вашей информации я не использую UINavigationController. Просто простой UIView в наконечнике с навигационной панелью, непосредственно перетаскиваемой из Interface Builder.

ответ

-1

На iOS 7 цвет по умолчанию для навигатора белый. Синий - это стандарт navcolor по умолчанию в iOS 6, поэтому, возможно, он просто устанавливает его по умолчанию для этой версии ОС. Это означает, что ваш navbar - это синий синим iOS 6.

+0

Нет, это не по умолчанию синий, я использовал свойство tintColor. – allaire

4

Я думаю, что вы хотите это:

UIColor *tintColor = [UIColor redColor]; 
if ([navigationBar respondsToSelector:@selector(setBarTintColor:)]) 
{ 
    navigationBar.barTintColor = tintColor; 
} 
else 
{ 
    navigationBar.tintColor = tintColor; 
    navigationBar.translucent = NO; 
} 

В iOS7 свойство tintColor от UINavigationBar изменен только подкрасить кнопки (leftBarButtonItem/rightBarButtonItem) объявить пользователю они tappable. Новый способ «подкрасить» весь бар - с помощью barTintColor (доступный с iOS7).

Существует еще одна разница:

До iOS7 полупрозрачные свойство UINavigationBar был NO по умолчанию, теперь это YES.

Надеюсь, это вам поможет. :)

Бест, Sascha

+1

Я понимаю, что он не поддерживается для новых приложений, скомпилированных в Xcode 5 с использованием iOS 7.0 SDK, и мне нужно проверить это с условием, но мое все еще скомпилировано под iOS 6.1 SDK. Я не трогал его месяцами. – allaire

+0

Aaaah allaire, я думаю, что знаю вашу проблему, я тоже столкнулся с этим месяц назад. У вас стиль iOS6, но в баре неправильный цвет. У меня был этот вопрос и во время WWDC. Я думаю, что они изменили его с помощью бета-версии iOS7. 4. Можете ли вы проверить, если вы установили новейший iOS7 на тестовое устройство? –

+0

Точно, цвет панели темно-серый, но кнопки остаются темно-синими. – allaire

Смежные вопросы