Персонализиран шрифт за всички UIButtons

Опитах:

[[UILabel appearanceWhenContainedIn:[UIButton class], nil] setFont:[UIFont fontWithName:@"TwinkleStarROB" size:24.0]];

И работи добре на iOS 6, но на iOS 5 шрифтът не се показва добре. Показва се само след щракване върху него.

Примери за изображения: При зареждане на приложение: Изображение при зареждане на приложение При щракване върху: Изображение при кликване

Какъв изглежда е проблемът?

Получавам това в конзолата, когато приложението се изпълнява, но не знам как да го поправя:

"атрибутите на текста на бутона се спазват само за UIControlStateNormal, UIControlStateHighlighted и UIControlStateDisabled. състояние = 1 се интерпретира като UIControlStateHighlighted."


person 1337code    schedule 05.01.2013    source източник
comment
Защо не промените директно шрифта на екземпляра UILabel?   -  person kamprath    schedule 06.01.2013


Отговори (2)


Вероятно по-добрият начин да промените шрифта на UILabel е да го направите директно върху всеки етикет.

UILabel* label = ....;

label.font = [UIFont fontWithName:@"TwinkleStarROB" size:24.0]

Просто се уверете, че сте оразмерили своя UILabel така, че да работи с по-големия шрифт.

person kamprath    schedule 06.01.2013
comment
Имате предвид button.title.font... Създадох IBOutlet и промених шрифта - person 1337code; 07.01.2013
comment
Да, за етикет на бутон получавате достъп чрез свойството title. - person kamprath; 07.01.2013

Създадох IBOutlet за всички бутони и промених шрифта върху него.

person 1337code    schedule 06.01.2013