如何在swift中动态加载class?
How to dynamically load class in swift?
如果我的应用程序 A class 名为 Hello 并且其中的函数名为
helloworld 打印 "hello world" 语句,我想使用这个 class
在另一个应用程序 B 中并在运行时动态加载 hello class 并使用
helloworld 方法有人可以帮助我吗??!
如果我的理解正确,你可以使用 NSClassFromString
。请记住,iOS 不使用任何真正的命名空间,因此您的 class 字符串必须是 "SourceAppName.ClassName"
,如下所示:
let className = "SourceAppName.SomeViewControllerOrClass"
let grabbedClass = NSClassFromString(className!) as! UIViewController.Type
let helloWorldClass = grabbedClass.init()
如果我的应用程序 A class 名为 Hello 并且其中的函数名为
helloworld 打印 "hello world" 语句,我想使用这个 class
在另一个应用程序 B 中并在运行时动态加载 hello class 并使用
helloworld 方法有人可以帮助我吗??!
如果我的理解正确,你可以使用 NSClassFromString
。请记住,iOS 不使用任何真正的命名空间,因此您的 class 字符串必须是 "SourceAppName.ClassName"
,如下所示:
let className = "SourceAppName.SomeViewControllerOrClass"
let grabbedClass = NSClassFromString(className!) as! UIViewController.Type
let helloWorldClass = grabbedClass.init()