5

例如,我有

NSString *myClass = @"RootViewController"

如何从 NSString 获取课程?

4

3 回答 3

16

试试这个

 id obj= [[NSClassFromString(@"RootViewController") alloc] init];
于 2012-09-21T18:09:52.820 回答
7

您可以使用

Class class = NSClassFromString(@"RootViewController");

NSClassFromString

按名称获取类。

类 NSClassFromString ( NSString *aClassName );

参数

类名

The name of a class.

返回值

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

Available in iOS 2.0 and later.

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

NSGetSizeAndAlignment
NSClassFromString
NSStringFromClass
NSSelectorFromString
NSStringFromSelector
NSStringFromProtocol
NSProtocolFromString

参考基础函数参考

于 2012-09-21T18:17:58.390 回答
5
Class class = NSClassFromString(@"RootViewController");
于 2012-09-21T18:09:57.387 回答