Требования к операционной системе: iOS 5.0 и выше.
Мобильное устройство: iPad.
В данном примере описываются некоторые приемы работы с размерами шрифта. После запуска примера выполняются следующие операции:
извлекаются наименования размеров шрифтов по заданным размерам;
создаются объекты шрифтов по заданному наименованию семейства и размеру шрифтов;
извлекается наименование шрифта по наименованию семейства шрифтов;
с помощью полученных шрифтов создаются метки, содержащие текстовое описание полученных шрифтов.
Для выполнения примера необходимо разместить в теле метода executeExample класса ViewController (см. раздел «Отображение экспресс-отчёта») следующий код:
// Получаем размеры шрифта
int smallest = FONT_SIZE_SMALLEST;
int small = FONT_SIZE_SMALL;
int medium = FONT_SIZE_MEDIUM;
int large = FONT_SIZE_LARGE;
int largest = FONT_SIZE_LARGEST;
// Получаем наименования шрифтов по заданным размерам
NSString *sizeNameSmallest = [FontSizeViewController sizeNameForSize:smallest];
NSString *sizeNameSmall = [FontSizeViewController sizeNameForSize:small];
NSString *sizeNameMedium = [FontSizeViewController sizeNameForSize:medium];
NSString *sizeNameLarge = [FontSizeViewController sizeNameForSize:large];
NSString *sizeNameLargest = [FontSizeViewController sizeNameForSize:largest];
// Получаем массив наименований семейств шрифтов
NSArray *fontFamilyNames = [[NSArray alloc] initWithArray:[UIFont familyNames]];
// Получаем наименование семейства шрифтов из массива
NSString *fontFamilyName = [fontFamilyNames objectAtIndex:0];
// Получаем объекты шрифтов
UIFont *font1 = [UIFont fontWithFamily:fontFamilyName bold:NO italic:NO withSize: smallest];
UIFont *font2 = [UIFont fontWithFamily:fontFamilyName bold:NO italic:NO withSize: small];
UIFont *font3 = [UIFont fontWithFamily:fontFamilyName bold:NO italic:NO withSize: medium];
UIFont *font4 = [UIFont fontWithFamily:fontFamilyName bold:NO italic:NO withSize: large];
UIFont *font5 = [UIFont fontWithFamily:fontFamilyName bold:NO italic:NO withSize: largest];
// Получаем наименование шрифта по наименованию семейства шрифтов
NSString *fontName = [UIFont fontNameWithFamily:fontFamilyName bold:NO italic:NO];
// Создаем строки с описанием шрифтов
NSString *labelText1 = [NSString stringWithFormat:@"Наименование: %@, размер: %d, шрифт: %@", sizeNameSmallest, smallest, fontName];
NSString *labelText2 = [NSString stringWithFormat:@"Наименование: %@, размер: %d, шрифт: %@", sizeNameSmall, small, fontName];
NSString *labelText3 = [NSString stringWithFormat:@"Наименование: %@, размер: %d, шрифт: %@", sizeNameMedium,medium, fontName];
NSString *labelText4 = [NSString stringWithFormat:@"Наименование: %@, размер: %d, шрифт: %@", sizeNameLarge, large, fontName];
NSString *labelText5 = [NSString stringWithFormat:@"Наименование: %@, размер: %d, шрифт: %@", sizeNameLargest, largest, fontName];
// Создаем метки
UILabel *label1 = [[UILabel alloc] init];
UILabel *label2 = [[UILabel alloc] init];
UILabel *label3 = [[UILabel alloc] init];
UILabel *label4 = [[UILabel alloc] init];
UILabel *label5 = [[UILabel alloc] init];
// Задаем текст меток
[label1 setText:labelText1];
[label2 setText:labelText2];
[label3 setText:labelText3];
[label4 setText:labelText4];
[label5 setText:labelText5];
// Задаем шрифт меток
[label1 setFont:font1];
[label2 setFont:font2];
[label3 setFont:font3];
[label4 setFont:font4];
[label5 setFont:font5];
// Задаем выравнивание текста в метках
[label1 setTextAlignment: NSTextAlignmentCenter];
[label2 setTextAlignment: NSTextAlignmentCenter];
[label3 setTextAlignment: NSTextAlignmentCenter];
[label4 setTextAlignment: NSTextAlignmentCenter];
[label5 setTextAlignment: NSTextAlignmentCenter];
// Задаем границы меток
[label1 setFrame:CGRectMake(0, 0, 700, 50)];
[label2 setFrame:CGRectMake(0, 50, 700, 50)];
[label3 setFrame:CGRectMake(0, 100, 700, 50)];
[label4 setFrame:CGRectMake(0, 150, 700, 50)];
[label5 setFrame:CGRectMake(0, 200, 700, 50)];
// Удаляем все дочерние представления окна
NSArray *subviews = [self.view subviews];
for(UIView *subView in subviews)
{
[subView removeFromSuperview];
}
// Отображаем метки
[self.view addSubview:label1];
[self.view addSubview:label2];
[self.view addSubview:label3];
[self.view addSubview:label4];
[self.view addSubview:label5];
В результате выполнения примера на экране мобильного устройства были отображены метки, содержащие наименования размеров шрифтов, значения, соответствующие различным размерам шрифтов, а также наименования шрифтов, которые были использованы для отображения надписей меток:

См. также: