Rol*_*lin 12
在iPhone上,如果要创建给定类名的类的实例,可以使用运行时函数objc_lookUpClass.
例如,如果我有一个基类BaseHandler并且想要在运行时实例化一个右子类的对象(在本例中硬编码为MyHandler):
#import <objc/objc.h>
[...]
NSString *handlerClassName = @"MyHandler"
id handlerClass = objc_lookUpClass([handlerClassName
cStringUsingEncoding:[NSString defaultCStringEncoding]]);
BaseHandler *handler = (BaseHandler *) [[handlerClass alloc] init];
Run Code Online (Sandbox Code Playgroud)
Ale*_*lds 11
MyClass *myClass = [[MyClass alloc] init];
OtherClass *otherClass = [[OtherClass alloc] init];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8403 次 |
| 最近记录: |