我正在开发一个Android PhoneGap应用程序,我需要将我的自定义相机/图库视图添加到HTML页面 - 例如我的HTML页面中的一些空DIV,其ID已经存在 . 怎么实现呢?
我知道如何编写插件和基本的HTML东西 .
有什么办法,我可以访问Cordova Webview中当前HTML页面的元素吗?
我的要求是将我自定义的摄像机视图添加到HTML页面,无论我有什么尺寸 .
更新答案:
我终于想出了如何做到这一点 .
首先,您需要将视图(如按钮)添加到Cordova WebView中 . Cordova WebView负责滚动 .
webview.addView(button);
https://github.com/wf9a5m75/phonegap-googlemaps-plugin/blob/master/src/android/plugin/google/maps/GoogleMaps.java#L373
如果更改了设备方向,则需要更改大小 . 但在Cordova中,您不能在java中接收事件,因此您需要在JavaScript中监听事件 .
window.addEventListener("orientationchange", onMapResize);
https://github.com/wf9a5m75/phonegap-googlemaps-plugin/blob/master/www/googlemaps-cdv-plugin.js#L1381
这是关键点 . 将HTML中的位置更改为View中的点,您可以执行此操作
Math.round(d * webView.getScale());
https://github.com/wf9a5m75/phonegap-googlemaps-plugin/blob/master/src/android/plugin/google/maps/GoogleMaps.java#L383
这是我的插件 . 我将Google Maps Android API v2嵌入到指定的div标记中 .
1 回答
更新答案:
我终于想出了如何做到这一点 .
首先,您需要将视图(如按钮)添加到Cordova WebView中 . Cordova WebView负责滚动 .
https://github.com/wf9a5m75/phonegap-googlemaps-plugin/blob/master/src/android/plugin/google/maps/GoogleMaps.java#L373
如果更改了设备方向,则需要更改大小 . 但在Cordova中,您不能在java中接收事件,因此您需要在JavaScript中监听事件 .
https://github.com/wf9a5m75/phonegap-googlemaps-plugin/blob/master/www/googlemaps-cdv-plugin.js#L1381
这是关键点 . 将HTML中的位置更改为View中的点,您可以执行此操作
https://github.com/wf9a5m75/phonegap-googlemaps-plugin/blob/master/src/android/plugin/google/maps/GoogleMaps.java#L383
这是我的插件 . 我将Google Maps Android API v2嵌入到指定的div标记中 .