swift_通过字符串创建ViewController类

fileprivate func addChildViewController(_ childViewController: String, title: String) {

// 准备工作: 命名空间: 必须指定那个bundle(包)

// 从Info.plist中获取bundle的名字

let namespace = Bundle.main.infoDictionary!["CFBundleName"] as! String

// 0.将控制器的字符串转成控制器类型

let classFromStr: AnyClass? = NSClassFromString(namespace + "." + childViewController)

let viewControllerClass = classFromStr as! UIViewController.Type

// 1.创建控制器对象

let viewController = viewControllerClass.init()

}

你可能感兴趣的:(swift_通过字符串创建ViewController类)