我正在使用最新版本的 Cordova (3.3) 开发一个插件。我需要将 native UIImageView
添加到 Cordova View 。
如果我有权访问该项目(例如平台文件夹中的项目),我可以将我的 View 添加到属于 CDVViewController
的 View 实例中。但是,我不确定如何从插件访问该引用。
在我的插件中我有:
@interface CDVCool : CDVPlugin
@property (weak, nonatomic) UIImageView *nativeImageView;
...
@end
如何通过仅修改插件文件来初始化和渲染此 View ?
最佳答案
此答案归功于 devgeeks谁向我介绍了他的几个插件,MapKit和 VolumeSlider ,将原生元素与 cordova web View 混合在一起。
关键是重写initWithWebView
方法:
-(CDVPlugin*) initWithWebView:(UIWebView*)theWebView
{
self = (VolumeSlider*)[super initWithWebView:theWebView];
return self;
}
现在在插件中,您可以获得对 cordova Web View 背后的 View Controller 的引用,并添加您想要的任何内容。
[self.webView.superview addSubview:mpCustomView];
这很酷,因为您可以控制您添加的任何 View 相对于 webView 的 zPosition。因此,您可以将 View 放置在 Web View 之上或之下。
关于ios - 如何从 Cordova 插件添加 native View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21767146/