我如何从NSString获得课程?

Vol*_*da2 5 nsstring nsobject ios

例如,我有

NSString *myClass = @"RootViewController"
Run Code Online (Sandbox Code Playgroud)

我如何从NSString获得课程?

Nev*_*rBe 15

试试这个

 id obj= [[NSClassFromString(@"RootViewController") alloc] init];
Run Code Online (Sandbox Code Playgroud)


Mid*_* MP 7

您可以使用

Class class = NSClassFromString(@"RootViewController");
Run Code Online (Sandbox Code Playgroud)

NSClassFromString

按名称获得一个班级.

NSClassFromString类(NSString*aClassName);

参数

aClassName

The name of a class.
Run Code Online (Sandbox Code Playgroud)

回报价值

由aClassName命名的类对象,如果当前没有加载该名称的类,则为nil.如果aClassName为nil,则返回nil.可用性

Available in iOS 2.0 and later.
Run Code Online (Sandbox Code Playgroud)

在基础框架中有很多这样的方法

NSGetSizeAndAlignment
NSClassFromString
NSStringFromClass
NSSelectorFromString
NSStringFromSelector
NSStringFromProtocol
NSProtocolFromString
Run Code Online (Sandbox Code Playgroud)

参考基础功能参考


bry*_*yle 5

Class class = NSClassFromString(@"RootViewController");
Run Code Online (Sandbox Code Playgroud)