Шрифты не отображаются в Интерфейсном Разработчике - PullRequest
6 голосов
/ 03 августа 2010

По какой-то причине многие шрифты не будут отображаться в Интерфейсном Разработчике при разработке приложения для iPad. К сожалению, мой iPad еще не доставлен, поэтому я не могу сказать, будет ли это проблемой в долгосрочной перспективе, но он, безусловно, сохраняется и в симуляторе.

Соответствующие шрифты перечислены на различных веб-сайтах как совместимые с iPad, но SDK 4.0.1 все еще кажется запутанным.

Например, шрифт Hoefler Text, назначенный метке, нарисованной непосредственно на новом виде iPad, отображается с использованием шрифта по умолчанию. Если я нажму, чтобы отредактировать текст, он будет отображаться правильным шрифтом. Я попробовал это на паре маков сейчас

Это проблема, так как мне нужно отправить через приложение макеты моему клиенту, чтобы подписать идеальные макеты пикселей для их бэкэнд-команды: (

Есть идеи?!

Ответы [ 3 ]

9 голосов
/ 13 января 2011

Для других, кому может быть интересно: есть ошибка / известная проблема с IB в XCode 3.x с нестандартными шрифтами и Interface Builder. Пользовательские шрифты обычно должны быть установлены программно (через [UIFont fontWithName ...).

Для макетов вы должны использовать инструмент, такой как PhotoShop и т. Д., А не Interface Builder.

3 голосов
/ 20 декабря 2012

с использованием пользовательских шрифтов в Интерфейсном Разработчике доступна многократно используемая библиотека.

Для этого используется простой трюк. Установите шрифт (скажем, calibri) для всех ваших элементов пользовательского интерфейса, которые вы никогда не будете использовать в своем проекте, и FontReplacer выполнит сопоставление между пользовательским шрифтом и calibri. Поэтому нет необходимости создавать IBOutlets или любую другую графику.

Вот ссылка на github, откуда вы можете скачать FontReplacer для использования в вашем проекте. https://github.com/0xced/FontReplacer

2 голосов
/ 03 июля 2013

Я решил это, написав пользовательскую категорию на UILabel. Эта категория имеет свойство «myFontName», которое я устанавливаю для метки с помощью objc_setAssociatedObject и получаю из объекта с помощью objc_getAssociatedObject.

Затем я написал другой метод в категории «updateWithMyFont», который устанавливает шрифт на этикетке с помощью свойства текста атрибута метки (захватываете атрибут attributeText и копирует атрибуты, задает шрифт, создает новую строку атрибута, устанавливает атрибут свойство).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...