Поиск…
замечания
Категории могут использоваться для переопределения методов класса. Даже если метод действительно закрыт. Переопределенный метод недоступен из категории или где-либо еще. Поэтому важно, чтобы при добавлении методов к существующему классу эти методы уже не существовали.
Создать категорию
Категории предоставляют возможность добавлять дополнительные функции к объекту без подкласса или изменения фактического объекта.
Например, мы хотим установить некоторые пользовательские шрифты. Позволяет создать категорию, добавляющую функциональность в класс UIFont
. Откройте проект Xcode, нажмите «Файл» -> «Создать» -> «Файл» и выберите «Объектив-C-файл», нажмите «Далее», введите название своей категории, произнесите «CustomFont», выберите тип файла как категорию и класс как UIFont, затем нажмите «Далее», а затем «Создать. "
Объявить метод категории: -
Нажмите «UIFont + CustomFonts.h», чтобы просмотреть заголовочный файл новой категории. Добавьте следующий код в интерфейс для объявления метода.
@interface UIFont (CustomFonts)
+(UIFont *)productSansRegularFontWithSize:(CGFloat)size;
@end
Теперь выполните метод категории: -
Нажмите «UIFont + CustomFonts.m», чтобы просмотреть файл реализации категории. Добавьте следующий код для создания метода, который будет устанавливать ProductSansRegular Font.
+(UIFont *)productSansRegularFontWithSize:(CGFloat)size{
return [UIFont fontWithName:@"ProductSans-Regular" size:size];
}
Импортируйте свою категорию
#import "UIFont+CustomFonts.h"
Теперь установите шрифт Label
[self.label setFont:[UIFont productSansRegularFontWithSize:16.0]];