Android与JS互调
红色标注是js调android 绿色标识是android调js 相信看完这篇文章就能明白Android与JS互调是怎么一回事了!!!
首先写JS调Android:
先上Android代码
wv_web = (WebView) view.findViewById(R.id.wv_web);
bt = (Button) view.findViewById(R.id.bt);
WebSettings settings = wv_web.getSettings();
settings.setBuiltInZoomControls(true);
settings.setSupportZoom(true);
settings.setJavaScriptEnabled(true);
settings.setDefaultFontSize(15);
wv_web.loadUrl("file:///android_asset/test.html");
wv_web.addJavascriptInterface(new JSToast(context), "JSADD"); JSADD是我们在js中调用Android方法的标识
标红的这一行是js调Android的关键 new出来的这个类是我们自己写的(例如下面代码) 如果我们想在js里面调javaScriptInter这个方法 我们就需要JSADD.javaScriptInter即可
public class JSToast {
private Context context;
public JSToast(Context context) {
super();
this.context = context;
}
@JavascriptInterface 这个必须要加
public void javaScriptInter(String name) {
Toast.makeText(context, name, 0).show();
}
}
下面上js代码 让我们看看js到底是怎么调Android代码的
点击隐藏图片
这里是js的一个按钮 点击之后调Android这个方法
点我跳转到百度页面
js调android效果图
下面是android调JS
上Android代码
bt.setOnClickListener(new OnClickListener() { 这里就是一个button点击执行js代码
@Override
public void onClick(View v) {
wv_web.loadUrl("javaScript:toJS('上天!!')"); 这里的javaScript:是固定写法 后面的toJS是js里面的 方法
}
});
这里是js调安卓效果 js页面出现了上天!!同时出现了我们的:吐死吐死吐死
更多相关文章
- 常用的小方法,避免忘记,在此记录一下
- android 制作的精美闹钟
- Android(安卓)TextView中链接(link)点击事件的截取
- android AlertDialog 弹窗自定义布局 点击外部不关闭弹窗
- Android中获取颜色的几种方法
- 【Android】android按钮的四种点击事件
- Android之打开闪光灯关键代码
- Android中全屏无标题设置(Android学习随笔十一)
- Android(安卓)Studio实现代码混淆