|
第一步 Webview设置
//设置编码
mWebView.getSettings().setDefaultTextEncodingName("utf-8");
//支持js
mWebView.getSettings().setJavaScriptEnabled(true);
//设置背景颜色 透明
mWebView.setBackgroundColor(Color.argb(0, 0, 0, 0));
//设置本地调用对象及其接口
// mWebView.addJavascriptInterface(this, "myObj"); //这里this可以本类 也可以创建一个新的类
mWebView.addJavascriptInterface(new JavaScriptObject(mContext), "myObj");
public class JavaScriptObject {
Context mContxt;
@JavascriptInterface //sdk17版本以上加上注解
public JavaScriptObject(Context mContxt) {
this.mContxt = mContxt;
}
public void fun1FromAndroid(String name) {
Toast.makeText(mContxt, name, Toast.LENGTH_LONG).show();
}
public void fun2(String name) {
Toast.makeText(mContxt, "调用fun2:" + name, Toast.LENGTH_SHORT).show();
}
}
//载入js
mWebView.loadUrl("file:///android_asset/test.html");
第二步:webview执行JS的方法
mWebView.loadUrl("javascript:funFromjs()");
第三步:JS执行WEBVIEW的方法
window.myObj.fun2()"name";
|
|