2012-06-04 4 views
4

Я не передам метод в качестве параметра другому методу, поэтому он знает метод вызова при завершении работы. Является ли это возможным?XCODE передать метод как параметр

[self bringJSON:(NSString *)_passedValua:(NSObject *)anotherMethod]; 
+0

Вы пробовали использовать селекторы? – Daniel

+0

AFAIK невозможно – Lefteris

ответ

15

Как @Daniel упоминалось в комментариях вы можете использовать selector для этого. Базовая схема будет следующей:

// Method declaration - method accept selector as parameter 
- (void) bringJSON:(NSString *)_passedValua toMethod:(SEL)anotherMethod]; 

// Method call - create selector from method name (mind the colon in selector - it is required if your method takes 1 parameter) 
[self bringJSON:jsonString toMethod:@selector(methodName:)]; 

// Implementation 
- (void) bringJSON:(NSString *)_passedValua toMethod:(SEL)anotherMethod]{ 
    ... 
    if ([target respondsToSelector:anotherMethod]) 
     [target performSelector:anotherMethod withObject:_passedValua]; 
} 
+0

awsome! tks много Владимир и Даниил! – 88fsantos

+0

приятный, почетный ... спасибо приятелю :) – abhi

Смежные вопросы