创建一个Android工程:myWebView
修改main.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<WebView
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
然后在assets目录下,新建一个html文件:demo.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>这是一个html页面
<div id="output" >test</div>
<input type="submit" value="buttons"
onclick="document.getElementById('output').innerHTML=demo.mydata()"/>
</body>
</html>
然后编辑myWebView.java文件
package com.webview;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
public class myWebView extends Activity {
private WebView mWebView;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mWebView = (WebView)findViewById(R.id.webview);
WebSettings webSettings = mWebView.getSettings();
webSettings.setSavePassword(false);
webSettings.setSaveFormData(false);
//是否允许在webview中执行javascript
webSettings.setJavaScriptEnabled(true);
webSettings.setSupportZoom(true);
//绑定java对象到JavaScript中,这样就能在JavaScript中调用java对象,实现通信。
//这种方法第一个参数就是java对象,第二个参数表示java对象的别名,在JavaScript中使用
mWebView.addJavascriptInterface(new DemoJavaScriptInterface(), "demo");
//webview加载本地html代码,注意本地html代码必须放在工程assets目录下,然后通过
//file:///android_asset/demo.html访问
mWebView.loadUrl("file:///android_asset/demo.html");
}
private final class DemoJavaScriptInterface{
DemoJavaScriptInterface(){
}
public int mydata(){
return 10;
}
}
}
本文指导如何在Android工程中创建WebView,并在其中加载HTML文件。通过在HTML中调用Java对象,实现JavaScript与Java之间的通信。演示了在Android应用中使用HTML页面和JavaScript的基本步骤,包括设置WebView属性、加载本地HTML文件以及在JavaScript中调用Java方法。

被折叠的 条评论
为什么被折叠?



