Swift 通过字符串,转成类 创建对象

// 从本地 info.plist获取是否有这个 功能
guard let clsName = Bundle.main.infoDictionary!["CFBundleExecutable"] else {
    print("Can not find NameSpace!!")
    return;
}

let model : ViewModel = self.dataArr[indexPath.row] as! ViewModel
// 生成 当前类
let cls : AnyClass? = NSClassFromString((clsName as! String) + "." + model.controllerName!)
// 如果不是 UIViewController类型,则renturn
guard let clsType = cls as? UIViewController.Type else{
    print("Can not append")
    return;
}

let vc = clsType.init()
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容