I am developing a plugin with the latest version of Cordova (3.3). I need to add a native UIImageView
to the Cordova view.
If I have access to the project for example in the platform folder, I can add my view to the view instance belonging to CDVViewController
. However, I am not sure how to access that reference from a plugin.
Inside my plugin I have:
@interface CDVCool : CDVPlugin
@property (weak, nonatomic) UIImageView *nativeImageView;
...
@end
How can I initialize and render this view by modifying only the plugin files?
Credit for this answer goes to devgeeks who pointed me to a couple of his plugins, MapKit and VolumeSlider, that mix in native elements with cordova web view.
The key is to overwrite the
initWithWebView
method:Now inside the plugin you can obtain a reference to the view controller behind cordova web view and add to it whatever your heart desire.
This is cool becuase you can control the zPosition of any views you add with respect to the webView. So you can put views above or below the web view.