2014-11-05 2 views
0

Возможно ли иметь индивидуальный цвет оттенков для одного UITabBarItem на панели вкладок? Я знаю, как установить его универсально с помощью [UITabBar appearance] setTintColor:. Но, например, я хочу одна вкладка будет окрашена синим цветом, когда выбран другой один с красным и т.д.Можно ли установить индивидуальные цвета оттенков для каждой кнопки на UITabBar?

Я знаю, что это может быть частично смягчены путем установки image и selectedImage свойства с UIImageRenderingModeAlwaysOriginal сохранить исходные цвета изображения, но текст субтитров по-прежнему имеет исходный оттенок всей панели вкладок.

+0

Пожалуйста, проверьте мой подробный ответ на: https://stackoverflow.com/questions/43002013/different-colors-for-tabbar-items-in- вкладка-бар-контроллер/47644313 # 47644313 – erickva

ответ

1

Изменение свойства tintColor индивидуально невозможно, но вы все равно можете изменить цвет текста для элемента панели вкладок.

Например:

[theTabBarItem setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor redColor]} 
            forState:UIControlStateNormal]; 
    [theTabBarItem setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor greenColor]} 
            forState:UIControlStateHighlighted]; 
0

Для нормального состояния (невыбранного):

[tabBarItem setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor grayColor]} 
           forState:UIControlStateNormal]; 

для выбранного государства:

[tabBarItem setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor blueColor]} 
           forState:UIControlStateHighlighted]; 
1

Изменения индивидуального оттенка цвета не невозможно, это просто требует довольно много усилий для достижения. Способ сделать это - переопределить метод табуляции didSelectItem. Когда пользователь выбирает элемент, вы меняете tabBar.tintColor на любой номер tintColor, который требуется для этого элемента, а затем необходимо позвонить selectedIndex = //The tapped index. Я отправлю код, если вы хотите, его, безусловно, достаточно взломать

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