在 js 代码中设置每个图片的点击事件
页面的点击事件中,调用设置好的交互接口来触发 Activity 的方法
JAVA 中设置交互接口 connect
获取到 WebView 的实例后添加交互接口
webview.addJavascriptInterface(new JavascriptImgInterface(), "connect");
第一个参数是重写的一个内部类,第二个参数设置交互接口的名字。
重写内部类
这个类的名字和 addJavascriptInterface 的参数一样即可
在重写的内部类中,使用注解标示可以被 js 调用的方法
class JavascriptImgInterface{
/**
* 在 Android4.2 极其以上系统需要给提供 js 调用的方法前加入一个注解:@JavaScriptInterface;
* 在虚拟机当中 Javascript 调用 JAVA 方法会检测这个 anotation,
* 如果方法被标识 @JavaScriptInterface 则 Javascript 可以成功调用这个Java 方法,否则调用不成功。
* @param img
*/
@JavascriptInterface
public void showImg(String img){
//利用js传过来的参数得到图片的地址
Intent intent = new Intent();
intent.putExtra("ImageUrl", img);
intent.setClass(ArticleActivity.this