网上案例很多,一直记不住,所以写下来作为笔记。
//1. 首先webview需要设置支持javascript
WebSettings setting = webView.getSettings();
//设置支持javascript
setting.setJavaScriptEnabled(true);
//2. 在 WebView 中绑定 Java 对象
jsData = new JSData();
webView.addJavascriptInterface(jsData, "data");
//3. 定义JSData
private final class JSData {
public void loadjs(String str) {
webView.loadUrl("javascript:bt1Click(" + str + ");");
}
//提供给javascript调用的方法
//必须加@JavascriptInterface才能被js访问到
@JavascriptInterface
public void loadandroid(String str) {
System.out.println("---------------str--------------" + str);
}
}
//4. html代码
<div id="div1" οnclick="window.data.loadandroid('123');">
</div>
或者
<a href="javascript:data.loadandroid('123')">标签</a>