插件与UIViewController
有人可以向我解释一个cordovaiOS插件的生命周期吗?
特别是,我有一个插件,我正在试图开发包含一个UIView
(和相关的UIViewController
)。
如何从我的扩展CDVPlugin
类获得Cordova UIView
,所以我可以添加我的插件作为子视图(它是如何工作的?)。
我想暂时在我的Cordova应用程序的顶部显示我的UIView
,然后解散它,返回到我的JS / HTML应用程序。
如果你想在整个cordova webview上显示整个UIViewController(全屏),你可以这样做
[self.viewController presentViewController:yourViewController animated:YES completion:nil];
例子:
相机插件
InAppBrowser插件
如果你想在cordova webview上添加一个视图,你可以这样做
[self.viewController.view addSubview:yourView];
例子:
MapKit插件
不同的是,第一种方法呈现整个视图控制器,全屏幕,第二种方法显示的视图可以有你想要的大小和位置,如果你没有使其具有相同大小的设备屏幕,用户将看到你的cordovawebview下
请参考上面@jcesarmobile给出的答案
插件与UIViewController
对于像我这样的不成熟的iOS开发人员,如果无法确定如何定义您的ViewController,请按照以下代码进行操作
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; UIViewController * yourViewController = [storyboard instantiateViewControllerWithIdentifier:@"iController"] ; [self.viewController presentViewController: yourViewController animated:YES completion:nil];
其中Main是故事板文件名,iController是在Main.Storyboard文件中定义的viewController的storyboardIdentifier
请投票上面的@jcesarmobile给出的答案