Использование расширенных методов NSData без реализации - PullRequest
0 голосов
/ 16 мая 2018

Я связан с платформой, которая реализует расширенные методы на NSData.Фреймворк не с открытым исходным кодом, поэтому у меня нет его реализации.

Расширенные методы:

testheader.h

#import <Foundation/Foundation.h>

@interface NSData (TestObj)
- (id)test2:(id)arg1;
- (id)test:(id)arg1;
- (id)test3:(id)arg1;

@end

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

#import "testheader.h"

@implementation ViewController

static void test_header_func () {

    NSData *test_var = [NSData test];

}

Я получаю сообщение об ошибке:

"Не известен метод класса для селектора 'test'"

1 Ответ

0 голосов
/ 16 мая 2018

В категории предусмотрены дополнительные методы instance .Вы пытаетесь использовать их как метод class .И вы не передаете обязательный аргумент.

static void test_header_func () {
    NSData *test_var = [NSData new]; // or some existing `NSData` instance you have
    id someResult = [var test:someArgument];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...