1.在主清单文件中开网络权限
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
2.布局文件
4.html文件在main---assets目录下(assets目录是自己建的)
图片也在main---assets目录下目录下
a.jpg
b.jpg
源码下载:
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
2.布局文件
activity_main.xml
<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<WebView
android:id="@+id/webView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</RelativeLayout></span>
3.MainActivity中
<span style="font-size:18px;">public class MainActivity extends Activity {
private WebView webView1;
private Handler handler;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webView1 = (WebView)findViewById(R.id.webView1);
handler=new Handler();
myWebSetting();
}
private void myWebSetting(){
// 进行设置
// 得到一个网页设置对象
WebSettings settings = webView1.getSettings();
// 支持js
settings.setJavaScriptEnabled(true);
// demo是给MyObject器的别名
// 调用的时候window.demo.myclickOnAndroid()
webView1.addJavascriptInterface(new MyObject(),"demo");
// 加载网页
webView1.loadUrl("file:///android_asset/index.html");
}
public class MyObject{
// @JavascriptInterface必须加,不加报错
@JavascriptInterface
public void myclickOnAndroid(){
handler.post(new Runnable() {
@Override
public void run() {
// 调用js中的myfun()方法
webView1.loadUrl("javascript:myfun()");
}
});
}
}
}
</span>
4.html文件在main---assets目录下(assets目录是自己建的)
图片也在main---assets目录下目录下
a.jpg
b.jpg
index.html
<span style="font-size:18px;"><!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<script language="JavaScript">
function myfun(){
document.getElementById("myimg").src="b.jpg";
}
</script>
</head>
<body>
<!--调用android中的MyObject下的myclickOnAndroid()-->
<a οnclick="window.demo.myclickOnAndroid()">
<img src="a.jpg" id="myimg" width="200"height="200"/>
</a>
</body>
</html></span>
源码下载:
MyWebView----js