2016-01-18 5 views
3

У меня есть UITabBar для моего приложения. Поскольку у него слишком много просмотров для отображения сразу, у него есть кнопка «Больше», которая опускает таблицуView, которая отображает остальные виды. Я пытаюсь изменить цвет значков, чтобы они соответствовали остальным из них внизу, так как по умолчанию значения по умолчанию серые для нижних значков и синий для значков внутри большего вида. Мне удалось получить его на работу, добавив в строке:UITabBarController не меняет цвет значков кнопок «больше»

self.tabBarController?.moreNavigationController.view.tintColor = .grayColor()

Я добавил эту линию внутри контроллера вид первой вкладки в функции viewDidLoad. Опять же, это сработало, но было не так удобно помещать его туда, поэтому я сделал UITabBarController и положил строку в viewDidLoad этого контроллера. Затем я подключил контроллер через раскадровку с полем класса в разделе «Пользовательский класс» инспектора идентификации. Таким образом TabBar больше не использует его, и значки возвращаются к синему.

Мой вопрос: Должен ли я сохранить эту строку в первом представлении Контроллер загружен? Или я должен положить эту линию в другом месте?

Первое изображение: показывая нижние значки на tabBar, текущий выбранный значок черный, остальные серые. enter image description here

Второе изображение. Это показывает весь экран с вкладкой внизу, а на другой странице, как видите, значки синие, я хочу изменить их на серый. enter image description here

ответ

0

Вы пробовали использовать

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

Хотя это будет влиять на все вкладки преграждает View Controller может получить доступ (я считаю), так что будьте осторожны. Однако следует изменить панель вкладок независимо от того, является ли это UITabBar или UITabBarController.

+0

Нет, это меняет цвет нижних значков, меняет значки на «больше» вид – TaylorAllred

+0

Кроме того, это только влияет на текущий выбранный значок – TaylorAllred

+0

Хм, вы думаете, что можете опубликовать снимок экрана? Я не думаю, что мы говорим об одном и том же – SunburstEnzo

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