使用NSString调用现有对象并调用方法 - objective-c

Fra*_*ans 0 cocoa objective-c

另一个容易的,对你们我的意思是:

我需要在现有对象上调用一个方法,如下所示:

[object method];
Run Code Online (Sandbox Code Playgroud)

然而,对象的名称是不同的(这个代码是针对超类的,每个孩子都有不同的名称).所以我想用这样的NSString调用该对象:

NSString *objectName = @"object";
[objectName method];
Run Code Online (Sandbox Code Playgroud)

我已经阅读了关于NSClassFromString(我现在一直在寻找几个小时),但这不起作用.然后我得到以下错误:"没有选择器'方法'的已知类方法".

你们知道我做错了吗?

提前谢谢,弗兰斯

ken*_*ytm 5

变量的名称仅在编译时才知道.无法从NSString自动获取变量.但是,您可以使用NSDictionary并调用该方法,例如:

NSDictionary* dict = @{@"object": object, @"obj2": obj2};
NSString* objectName;
[dict[objectName] method];
Run Code Online (Sandbox Code Playgroud)