Позвольте мне начать с того, что я новичок в Objective C.Как правильно использовать makeObjectsPerformSelector: Получение сообщение об ошибке непризнанные селектор
Я получаю ошибку atusMenuApp[24288:303] -[__NSCFConstantString createListItem]: unrecognized selector sent to instance 0x100002450
Вот мой код:
selector = [NSMutableArray arrayWithObjects: @"nvda", @"aapl", @"goog", nil];
[selector makeObjectsPerformSelector:@selector(createListItem:) withObject:self];
- (void)createListItem:(NSString *)title {
//do some stuff
}
Теперь я сделал много оглядываясь по сторонам, и кажется, что самая большая причина для этой проблемы заключается в добавлении или отсутствии :
, однако я верю, что правильно имею это место. Может быть, я не понимаю, использование makeObjectsPerformSelector
очень хорошо, как после просмотра на документ на нем я нашел:
Sends to each object in the array the message identified by a given selector, starting with the first object and continuing through the array to the last object.
Любая помощь будет здорово, спасибо!
+1. Вы видели, что искатель отменил аргументы, изучив аргумент, который принимает метод, и содержимое массива. Очевидно, я не выглядел достаточно глубоко, поэтому я знал, почему они получают исключение, но не понял, почему они думали, что они будут делать. :) – Metabble
@Metabble Спасибо. Это было настолько непреодолимо очевидным, что я почувствовал желание ответить: P –
Если бы вы не ответили, они, вероятно, в итоге получили бы десять ответов, в которых «NSString» не реализует 'createListItem', и они в конечном итоге путаются. xD – Metabble