- 命名空间 指得的就是项目的名称
- 在OC中没有命名空间 也就是说所有的类可以通过字符串转class
- 在Swift 中 系统提供的类可以通过字符串转class
- 但是程序员自定义的类需要使用命名空间.自定义类名 才可以完成字符串转class
1. 得到一个类的字符串名称 (项目名.自定义类名)
let className = "项目名称.自定义的类名的字符串"
print(NSClassFromString(className)) -> Optional(项目名称.自定义的类名的字符串)
2. 通过字符串得到对应的class
let c = NSClassFromString(className)! as! UIViewController.Type
3. 通过class 实例化一个对象
let vc = c.init()
print(vc) -> <WB.HComposeViewController: 0x7ff82ad8e120>
.End
网友评论