基本视图——WebView(二)

作者:追风剑情 发布于:2016-5-13 12:14 分类:Android

       Android包含了一个基于Webkit的HTML渲染引擎,支持V8 JavaScript解释器。你可以通过使用WebView类在自己的应用中使用这些技术。Web视图上展示Web URL上的HTML,存储在设备上的文件,或者在应用中创建的任意字符串。Android的WebView包括历史、插件、缩放控制以及JavaScript支持等标准的浏览器功能。你也可以使用拿捏缩放等高级手势,也可以为触摸屏设备提供轻松导航。为了访问在线网页,你需要在清单中使用INTERNET权限。
<uses-permission android:name="android.permission.INTERNET" />

一、创建活动

XML

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
    
	<WebView
	    android:id="@+id/webview"
	    android:layout_width="match_parent"
	    android:layout_height="match_parent" />
</LinearLayout>

 

代码

package com.test.androidtest;

import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class WebViewActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_web_view);

		WebView webView = (WebView)findViewById(R.id.webview);
		webView.loadUrl("http://www.baidu.com");
		
		WebSettings webSettings = webView.getSettings();
		//启用JavaScript支持
		webSettings.setJavaScriptEnabled(true);
		//启用插件(包括Flash支持)
		webSettings.setPluginState(WebSettings.PluginState.ON);
		//启用缩放控制
		webSettings.setSupportZoom(true);
		//启用点击缩放和拿捏缩放功能
		webSettings.setBuiltInZoomControls(true);
		
		//重写新URL的加载,如果不做这个,那么当用户点击Web视图中一个新的URL时,都会打开默认浏览器并加载新的链接。
		//要使网页在Web视图中加载,需要添加以下代码。
		webView.setWebViewClient(new WebViewClient(){
			//这里重写URL加载行为,新的URL在现有的Web视图中加载。
			//返回true会停止事件向上层的视图传播并会阻止打开浏览器。
			@Override
			public boolean shouldOverrideUrlLoading(WebView view, String url) {
				view.loadUrl(url);
				return true;
			}
		});
	}
}

 

运行测试

1111111.png

 

标签: Android

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号