NSInvocation: нераспознанный селектор, хотя он установлен

Я получаю это сообщение:

"(null): нераспознанный селектор отправлен в класс 0x3f52e824"

Основной код, который я пробовал:

SEL sel = @selector(applyProperties:toObject:);

NSInvocation* inv = [NSInvocation invocationWithMethodSignature:[self methodSignatureForSelector:sel]];
[inv setTarget:self];
[inv setSelector:sel];
[inv setArgument:params atIndex:0];
[inv setArgument:theObject atIndex:1];

NSOperationQueue* queue = [[NSOperationQueue alloc] init];
NSInvocationOperation* operation = [[NSInvocationOperation alloc] initWithInvocation:inv];
[queue addOperation:operation];

 [queue release];

Я могу вызвать (applyProperties:toObject) сам по себе с этими аргументами... так что я не уверен, что я делаю неправильно.


person michael    schedule 08.02.2011    source источник
comment
Является ли этот код внутри метода экземпляра или класса?   -  person Jacob Relkin    schedule 08.02.2011
comment
@jacob это внутри экземпляра   -  person michael    schedule 08.02.2011
comment
является ли applyProperties:toObject: методом экземпляра?   -  person Jacob Relkin    schedule 08.02.2011
comment
@jacob Да, это метод экземпляра. Я могу и иногда вызываю [self applyProperties:params toObject:theObject], как в приведенном выше коде.   -  person michael    schedule 08.02.2011


Ответы (1)


Ответ очевиден, и его легко пропустить в документации из-за слишком быстрого чтения. Аргументы 0 и 1 зарезервированы, поэтому я решил, установив индексы 2 и 3

person michael    schedule 11.03.2011