У меня проблема с настройкой шрифта для UILabels и UITextViews с помощью Interface Builder. Я пытаюсь установить шрифт Gill Sans. Если я установлю его программно, он будет работать нормально, например так:
myLabel.font = [UIFont fontWithName:@"Gill Sans" size:24.0];
Но если я попытаюсь установить его с помощью Interface Builder, то получу то же поведение, описанное в этом вопросе здесь iPhone SDK: шрифт метки Interface Builder, отображается только при редактировании label , но Gill Sans предположительно доступен на iPad (и это так, так как он работает, если я устанавливаю его по коду). И если я запускаю его и делаю так:
NSLog(@"%@", myLabel.font.fontName);
он печатает «Helvetica».
Обычно я не возражал бы установить его программно, но проблема в том, что этот конкретный класс используется в нескольких разных местах с разными файлами пера чтобы обеспечить разные макеты, поэтому я не могу жестко закодировать, чтобы всегда использовать одно и то же семейство шрифтов. И создавать подклассы для каждого раза, когда это кажется, будет огромной болью, Может быть, Interface Builder ограничивает меня в использовании шрифтов iPhone, хотя цель файла xib уже установлена на iPad, но как мне убедить его, что я нацеливаюсь на iPad?
Заранее спасибо, filipe
Хорошо, очевидно, об этом сообщалось как об ошибке в IB 3.2.3:
https://devforums.apple.com/message/236134#236134
Этот парень говорит, что раньше он работал с 3.2.2, поэтому я посмотрю, смогу ли я перейти на более раннюю версию, или просто подожду исправления от Apple.
Вы можете использовать только шрифты, которые есть в iPhone OS. Проверьте этот ответ , чтобы узнать, как встраивать пользовательские шрифты в ваше приложение.