Разрушение глобального оттенка UITabBar Tint изменен в IOS 7.1
Упустил ли я что-то, просто используя Глобальный оттенок, чтобы настроить общий оттенок приложений?
Мое приложение, работающее в IOS 7.06, неожиданно изменилось сегодня после обновления IOS 7.1.
Базовая раскадровка, приложение на основе табуляции с глобальным оттенком (оранжевое), установленное в раскадровке в IB.
Сегодня обновлено до IOS 7.1 IPhone 5S и отображается стандартный синий оттенок
IPhone 4 IOS 7.06, та же самая подсказка TabBar, как и должно быть.
Пришлось установить ниже
[[UITabBar appearance] setTintColor:[UIColor orangeColor]];
в TabBarControllers ViewDidLoad, чтобы исправить проблему.
Может быть, у меня что-то еще неправильно установлено?
Ответы
Ответ 1
Это известная ошибка в бета-версиях 7.1, которая никогда не фиксировалась в финальной версии.
Как и у вас, у меня была такая же проблема, и я должен был установить ее вручную как исправление.
Рекомендуется, если вы хотите установить глобальный цвет оттенков, сделайте это в -application:will/didFinishLaunchingWithOptions:
. В качестве альтернативы, если вам нужны определенные цвета для каждого контроллера вида, сделайте это в prepareForSeque:
.
Лично я попробовал установить его в -viewWillAppear:animated:
в корневом представлении UINavigationController
и, похоже, работает нормально.
Посмотрите здесь тему devforum
Ответ 2
Быстрый код, который работает под iOS 11 (в AppDelegate didFinishLaunching):
application.windows[0].rootViewController?.view.tintColor = UIColor.black