如果我在我的 Android 或 iPhone 应用程序中加载了一个 webkit View ,我可以在 webkit 中从页面来回传递数据吗?
例如,我可以从网络上拉下一个 html View ,然后用我设备上存储的数据填充该 View 中的表单吗?
最佳答案
是的,在 Android 中使用 addJavaScriptInterface() .
class MyInterface {
private String someData;
public String getData() { return someData; }
}
webview.addJavaScriptInterface(new MyInterface(), "myInterface");
并且在您的 WebView 中的 html 中。
<script type="text/javascript">
var someData = myInterface.getData();
</script>
顺便说一下,如果您使用的网页不是您的(这样您就无法修改它),您可以插入 javascript 内联。例如:
webview.loadUrl("javascript:document.getElementById('someTextField').value = myInterface.getData();");
关于iphone - Webkit 与原生环境的通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3257106/