我已经为此苦苦挣扎了几天,但无法让它发挥作用,也找不到其他人似乎已经解决了这个问题。希望有人可以提供帮助。
我有一个简单的 ViewController,在 Swift 的故事板中有 2 个视图,我试图通过 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()
}
}
}
如果还有什么可以帮助的,请告诉我。提前致谢!
第 1 步:需要将故事板导入为
<resource-file src="src/ios/MyStoryboard.storyboard"/>
第 2 步:将您的框架导入为
<framework src="src/ios/helloSwiftFrame.framework" custom="true"/>
在plugin.xml中执行以上两步
第 3 步:现在进入插件中的 .m 文件
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MyStoryboard" bundle:nil];
UIViewController *yourViewController = [storyboard instantiateViewControllerWithIdentifier:@"MyStoryID"] ;
[self.viewController presentViewController: yourViewController animated:YES completion:nil];
也不要忘记在 .m 文件中导入框架。
就这样完成了..!!快乐编码
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)