9
我怎麼能在運行時調用一個方法上的Objective-C類時我只有它的字符串形式的簽名:調用Objective-C的方法,通過名字
NSString* typeName = @"Widgets";
NSString* methodName = [NSString stringWithFormat:@"add%@Object:", typeName];
注意方法的名稱可以改變在運行時,但參數的數量保持不變 - 在這種情況下是一個參數。如果你需要傳遞參數
SEL selector = NSSelectorFromString(methodName);
[myObject performSelector:selector];
也有performSelector:withObject:
,並performSelector:withObject:withObject:
方法:
當您需要超過2個參數時,請不要忘記NSInvocation。 – dreamlax 2009-07-07 07:52:25