Ios 如何在Cordova中从CDVPlugin显示ViewController?

Ios 如何在Cordova中从CDVPlugin显示ViewController?,ios,cordova,swift,cordova-plugins,xcode-storyboard,Ios,Cordova,Swift,Cordova Plugins,Xcode Storyboard,我已经为此挣扎了几天,无法让它工作,也找不到任何其他人似乎已经明白了这一点。希望有人能帮忙 我有一个简单的ViewController,在Swift的故事板中有两个视图,我正试图通过Cordova插件打开它(Android版本有效)。我已经做到了不出错的地步,我看到每一行代码都被命中,但我仍然没有看到ViewController显示。应用程序的独立版本运行良好 以下是插件调用的代码: import Foundation @objc(SomePlugin) class SomePlugin :

我已经为此挣扎了几天,无法让它工作,也找不到任何其他人似乎已经明白了这一点。希望有人能帮忙

我有一个简单的ViewController,在Swift的故事板中有两个视图,我正试图通过Cordova插件打开它(Android版本有效)。我已经做到了不出错的地步,我看到每一行代码都被命中,但我仍然没有看到ViewController显示。应用程序的独立版本运行良好

以下是插件调用的代码:

import Foundation

@objc(SomePlugin) class SomePlugin : CDVPlugin {
    func show(command: CDVInvokedUrlCommand) {
        // step 1. take a storyboard variable
        var storyBoard:UIStoryboard? = nil
        storyBoard = UIStoryboard(name: "Main", bundle: nil)

        // step 2. un-box storyboard to sb variable
        if let sb = storyBoard {

            // step 3. create new window
            var window = UIWindow(frame: UIScreen.mainScreen().bounds)

            // step 4. start view controller
            window.rootViewController = sb.instantiateInitialViewController() as ViewController

            // step 5. make key window & visible
            window.makeKeyAndVisible()
        }
    }
}

如果还有什么可以帮忙的,请告诉我。提前谢谢

问题不在代码中,问题在错误的提交/合并中,它吹走了我的故事板和viewcontroller的一部分。恢复文件后,它会按预期打开。

步骤1:需要将情节提要作为

  <resource-file src="src/ios/MyStoryboard.storyboard"/>
另外,不要忘记在.m文件中导入框架

就这样了。。!!快乐编码

  <framework src="src/ios/helloSwiftFrame.framework" custom="true"/>
   UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MyStoryboard" bundle:nil];
    UIViewController *yourViewController = [storyboard   instantiateViewControllerWithIdentifier:@"MyStoryID"] ;
   [self.viewController presentViewController: yourViewController animated:YES completion:nil];