2014-02-13 27 views
1

我正在开发带有最新版Cordova(3.3)的插件。我需要在Cordova视图中添加原生UIImageView如何从Cordova插件添加原生视图

如果我有权访问项目,例如在平台文件夹中,我可以将视图添加到属于CDVViewController的视图实例。但是,我不确定如何从插件访问该引用。

里面我的插件,我有:

@interface CDVCool : CDVPlugin 

@property (weak, nonatomic) UIImageView *nativeImageView; 
... 
@end 

我怎么能初始化和渲染通过仅修改插件文件对此有何看法?

回答

2

此答案的积分是devgeeks谁指出我的几个插件,MapKitVolumeSlider,混合在本地元素与科尔多瓦网络视图。

关键是要覆盖initWithWebView方法:

-(CDVPlugin*) initWithWebView:(UIWebView*)theWebView 
{ 
    self = (VolumeSlider*)[super initWithWebView:theWebView]; 
    return self; 
} 

现在插件里面可以获取到后面科尔多瓦web视图的视图控制器的引用,并添加到它无论你的心脏的欲望。

[self.webView.superview addSubview:mpCustomView]; 

这很酷,因为你可以控制你添加的任何视图的zPosition相对于webView。因此,您可以将视图放在网络视图的上方或下方。

+0

注意:在较新版本的Cordova中,这需要在' - (void)pluginInitialize' – asgoth

相关问题