WebView的使用

1、Xml文件的编写

<WebView
        android:id="@+id/webView1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true" />

2、Java代码的编写

package com.phone.day22_webview;

import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.Menu;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
/**
 * WebView   加载网页
 * 
 * 
 * 
 * @author Mr.Zhao
 *
 */
public class MainActivity extends Activity {

	private WebView webView;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		webView = (WebView) findViewById(R.id.webView1);
		// 一定要将url 写全了 加上 http

		/**
		 * Uri 统一资源标识符: 格式: schema:// host:port/path 约束://主机名:端口号/路径 tel://
		 * sms:// sendsms:// Url http://
		 * 
		 */
		webView.loadUrl("http://www.baidu.com");
		// 可以加载本地html 文件
		// webView.loadUrl("file:///android_asset/XXXX.html");

		WebSettings settings = webView.getSettings();
		// 支持js语言
		settings.setJavaScriptEnabled(true);
		// 设置支持页面缩放
		settings.setBuiltInZoomControls(true);
		settings.setSupportZoom(true);
		// 自动将网页设置为一个合理的比例 显示出来
		settings.setUseWideViewPort(true);
		settings.setLoadWithOverviewMode(true);
//   在当前webView中 打开 网页
		webView.setWebViewClient(new WebViewClient() {
			@Override
			public boolean shouldOverrideUrlLoading(WebView view, String url) {
				// TODO Auto-generated method stub

				view.loadUrl(url);
				// 返回值为true 则调用当前的WebView 显示 为false 则 调用系统默认浏览器 显示
				return true;
			}

		});
		// 代表着加载的进度
		webView.setWebChromeClient(new WebChromeClient() {

			@Override
			public void onProgressChanged(WebView view, int newProgress) {
				// TODO Auto-generated method stub
				super.onProgressChanged(view, newProgress);
				if (newProgress == 100) {
					// 加载完成
				} else {
					// 加载中
				}

			}
		});
	}

	/**
	 * 
	 * 监听按键
	 * 
	 * --  物理按键与软键盘
	 */
	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
		// TODO Auto-generated method stub
 //     判断按下的是返回键  并且  webView 是可以返回上一级的时候
		if (keyCode == KeyEvent.KEYCODE_BACK && webView.canGoBack()) {
			//返回上一级
			webView.goBack();
			return true;
		}
		return super.onKeyDown(keyCode, event);
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值