2012-06-17 23 views
28

Witam Mam ten kod i to nie działa, co robię źle?Zmiana czcionki w UITabBarItem

- (void)viewDidLoad 
{  
    [self.tabBarItem setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"AmericanTypewriter" size:20.0f], UITextAttributeFont, nil] forState:UIControlStateDisabled]; 
} 

BTW to nie jest jedyną rzeczą w moim viewDidLoad ale chciałem po prostu pokazać wam to gdzie mogę umieścić go.

+0

można dzielić co wersja iOS są kierowane? Ta funkcja jest nowa w iOS 5. –

+0

@ctrahey Celuję w system iOS 5. –

Odpowiedz

61

Jak na: How to change the Color of text in UITabBarItem in iOS 5

Wygląda na to rozwiązaniem może być wysyłanie wiadomości do serwera proxy wygląd, zamiast jednej pozycji:

(przestarzałe w iOS 7.0+)

[[UITabBarItem appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"AmericanTypewriter" size:20.0f], UITextAttributeFont, nil] forState:UIControlStateNormal]; 

dla iOS 7.0+ użytku:

[[UITabBarItem appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIFont fontWithName:@"AmericanTypewriter" size:20.0f], NSFontAttributeName, nil] forState:UIControlStateNormal]; 
+0

Nie zmieniło to niczego ... –

+4

zmiana forstate: UIControlStateNormal –

+3

Nie wspomniano tutaj wyraźnie. Możesz umieścić ten kod w funkcji didFinishLaunchingWithOptions w delegacie aplikacji, aby ustawić go dla aplikacji. –

7

Swift sposób na leniwym:

UITabBarItem.appearance().setTitleTextAttributes([NSFontAttributeName: UIFont.systemFontOfSize(10)], forState: .normal) 
UITabBarItem.appearance().setTitleTextAttributes([NSFontAttributeName: UIFont.systemFontOfSize(10)], forState: .selected) 
+2

To nie zmienia czcionki dla mnie dla stanu '.selected'. – AbbasAngouti

+1

@AbbasAngouti dla zmiany czcionki jest zaznaczony stan powinieneś użyć czegoś takiego: https://stackoverflow.com/a/47529912/1980246 –

2

Swift 3

UITabBarItem.appearance().setTitleTextAttributes([NSFontAttributeName: UIFont(name: "OpenSans", size: 10)!], for: .normal)