UIFont fontWithName имя шрифта
скажем, вы хотите определенный шрифт для UIFont. Откуда ты знаешь, как это называется?
например, если вы хотите использовать этот код:
[someUILabelObject setFont:[UIFont fontWithName:@"American Typewriter" size:18]];
откуда вы копируете точную фразу "американская пишущая машинка". Есть заголовочный файл в Xcode?
обновление
также нашел этой удобно.
6 ответов:
может быть интересно для вас, как быстро выиграть в отладчике:
(lldb) po [UIFont fontNamesForFamilyName:@"Helvetica Neue"] (id) = 0x079d8670 <__NSCFArray 0x79d8670>( HelveticaNeue-Bold, HelveticaNeue-CondensedBlack, HelveticaNeue-Medium, HelveticaNeue, HelveticaNeue-Light, HelveticaNeue-CondensedBold, HelveticaNeue-LightItalic, HelveticaNeue-UltraLightItalic, HelveticaNeue-UltraLight, HelveticaNeue-BoldItalic, HelveticaNeue-Italic )
The документация на
UIFont
довольно ясно об этом:можно использовать
fontNamesForFamilyName:
метод для извлечения конкретные имена шрифтов для данного семейства шрифтов. (Примечание: это метод класса)вы можете получить фамилии такой:
NSArray *familyNames = [UIFont familyNames];
попробовать
NSArray *familyNames = [UIFont familyNames]; [familyNames enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop){ NSLog(@"* %@",obj); NSArray *fontNames = [UIFont fontNamesForFamilyName:obj]; [fontNames enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop){ NSLog(@"--- %@",obj); }]; }];
вот как вы получаете все имена шрифтов в вашем проекте. Вот и все ... 3 строки кода
NSArray *fontFamilies = [UIFont familyNames]; for (int i=0; i<[fontFamilies count]; i++) { NSLog(@"Font: %@ ...", [fontFamilies objectAtIndex:i]); }
Я сделал библиотеку, чтобы решить эту проблему:
https://github.com/Nirma/UIFontComplete
все шрифты представлены в виде системы
Font
перечисление и библиотека также подробно описывают способ его использования с вашими пользовательскими шрифтами в read me.в основном это:
let font = UIFont(name: "Arial-BoldItalicMT", size: 12.0)
заменяется либо этим:
let font = UIFont(font: .arialBoldItalicMT, size: 12.0)
или такой:
let myFont = Font.helvetica.of(size: 12.0)