NativeScript:使用自定义objective-c将类导入NativeScript中的Xcode项目

NativeScript:使用自定义objective-c将类导入NativeScript中的Xcode项目,nativescript,Nativescript,基本上我已经有了一些Objective-c类,我想在我的NativeScript projet中使用它们。目前,我已经将这些文件添加到Xcode项目目标中,我希望能够从nativeScript js调用我的objective-c代码。我看过医生,但我不明白。看起来很复杂。基本上目前我想做的就是通过调用一些东西来展示我的自定义视图控制器 const vc = MyCustomViewController.alloc.initWithNibName("xib file") pag

基本上我已经有了一些Objective-c类,我想在我的NativeScript projet中使用它们。目前,我已经将这些文件添加到Xcode项目目标中,我希望能够从nativeScript js调用我的objective-c代码。我看过医生,但我不明白。看起来很复杂。基本上目前我想做的就是通过调用一些东西来展示我的自定义视图控制器

const vc = MyCustomViewController.alloc.initWithNibName("xib file")
page.frame.ios.controller.present(vc,true, nil)
我有义务为此创建一个插件吗?我是否有义务使用objective-c类在Xcode中构建一个框架,然后导入该框架?

我发现了这一点

实际上,您需要做的是首先将本机iOS代码编译到一个框架中。根据文档,如果您使用swift编写,您的所有类都必须继承NSObject,并且您的所有函数都必须用@objc标记,以便向objective-c Nativescript端公开。您还将注意到,在框架中,您的包不是主包。在本例中,您可以看到如何从框架中检索捆绑包并从中加载xib

然后需要将框架文件添加到Nativescript插件。为此,您需要将框架添加到插件的iOS文件夹
yourPlugin/platform/iOS/yourFramework.framework

然后,您需要将插件添加到应用程序中。您可以使用下一个命令行添加本地插件。注意路径以/src文件夹结尾

tns plugin add /path/to/yourplugin/src
现在,您可以调用本机函数和类,而无需导入它们。当然,这只适用于iOS。如果你在android上运行你的应用程序,调用这些方法将会崩溃

要在Nativescript端显示此viewController,需要调用以下代码。顺便说一下,您可以在其他地方找到文档,以获取对当前
页面
框架
对象的引用

const controller = page.frame.ios.controller
const  vc = IOMediaViewController.create()
vc.modalPresentationStyle = UIModalPresentationFullScreen
controller.presentViewControllerAnimatedCompletion(vc,true,null)