Изменение шрифта в UITabBarItem
Привет, у меня есть этот код, и он не работает, что я делаю неправильно?
- (void)viewDidLoad
{
[self.tabBarItem setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"AmericanTypewriter" size:20.0f], UITextAttributeFont, nil] forState:UIControlStateDisabled];
}
Кстати, это не единственная вещь в моем представленииDidLoad, но я просто хотел показать вам, ребята, где я ее положил.
Ответы
Ответ 1
В соответствии с: Как изменить цвет текста в UITabBarItem в iOS 5
Похоже, что решение может отправлять сообщение в прокси-сервер внешнего вида вместо одного элемента:
(Устаревший в iOS 7.0 +)
[[UITabBarItem appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"AmericanTypewriter" size:20.0f], UITextAttributeFont, nil] forState:UIControlStateNormal];
Для iOS 7.0+ используйте:
[[UITabBarItem appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"AmericanTypewriter" size:20.0f], NSFontAttributeName, nil] forState:UIControlStateNormal];
Ответ 2
Быстрый путь, для лени:
UITabBarItem.appearance().setTitleTextAttributes([NSFontAttributeName: UIFont.systemFontOfSize(10)], forState: .normal)
UITabBarItem.appearance().setTitleTextAttributes([NSFontAttributeName: UIFont.systemFontOfSize(10)], forState: .selected)
Ответ 3
Swift 3
UITabBarItem.appearance().setTitleTextAttributes([NSFontAttributeName: UIFont(name: "OpenSans", size: 10)!], for: .normal)