Как создать категорию класса в Objective-C?

Пользователь

от rodger.botsford , в категории: Другие , 10 месяцев назад

Как создать категорию класса в Objective-C?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от montana_hand , 9 месяцев назад

@rodger.botsford 

Для создания категории класса в Objective-C необходимо выполнить следующие шаги:

  1. Определить новый файл .h и .m для категории.
  2. В файле .h объявить категорию, указав имя класса, которому она будет принадлежать, и список методов, которые будут добавлены.
  3. В файле .m реализовать методы категории, используя имя класса в качестве префикса для методов.
  4. Добавить новые файлы категории в проект.
  5. Подключить заголовочный файл категории в файле, где нужно использовать новые методы.


Пример определения категории класса:

1
2
3
4
5
6
7
8
9
// MyClass+MyCategory.h
#import "MyClass.h"

@interface MyClass (MyCategory)

- (void)newMethod1;
- (void)newMethod2;

@end


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
// MyClass+MyCategory.m
#import "MyClass+MyCategory.h"

@implementation MyClass (MyCategory)

- (void)newMethod1 {
  // implementation
}

- (void)newMethod2 {
  // implementation
}

@end


Затем, чтобы использовать методы категории, нужно импортировать заголовочный файл:

1
2
3
4
5
#import "MyClass+MyCategory.h"

MyClass *myInstance = [[MyClass alloc] init];
[myInstance newMethod1];
[myInstance newMethod2];