15_android-WebView的简单实用介绍
来源:互联网 发布:剑灵王婉茹捏脸数据 编辑:程序博客网 时间:2024/06/05 05:07
WebView(网络视图)能加载显示网页,可以将其视为一个浏览器。它使用了WebKit渲染引擎加载显示网页。
它的实现方式有如下两种:
1.第一种实现步骤
1、在布局文件中声明WebView(activity_main.xml)
<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="${relativePackage}.${activityClass}" > <WebView android:id="@+id/webView1" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" /></RelativeLayout>
2、在Activity中实例化WebView(MainActivity)
private WebView webView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 获取控件对象webView = (WebView) findViewById(R.id.webView1); }
3、调用WebView的loadUrl( )方法,设置WebView要显示的网页
// 设置显示的网页webView.loadUrl("http://www.baidu.com");备注1:如果访问的页面中有Javascript,则webview必须设置支持Javascript,否则页面也是空白
// 获取WebView属性WebSettings websettings = webView.getSettings();// 设置支持javascript代码websettings.setJavaScriptEnabled(true);
备注2:如果需要访问网络需要添加网络访问的权限,否则会出现Web page not available错误
<uses-permission android:name="android.permission.INTERNET"/>
4、为了让WebView能够在当前组件中响应超链接功能,而非新打开android系统中的浏览器响应该链接,必须调用setWebViewClient( )方法,设置 WebView视图
// 设置视图webView.setWebViewClient(new WebViewClient() {@Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) {// 打开地址view.loadUrl(url);// 返回的是true,代表在webView控件中打开,否则在系统的浏览器中打开return true;}});5、用WebView点链接看了很多页以后为了让WebView支持回退功能,需要覆盖覆盖Activity类的onKeyDown()方法,如果不做任何处理,点击系统回退键,会调用finish()而结束自身,而不是回退到上一页面
// 后退的操作实现@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK && webView.canGoBack()) {Toast.makeText(this, "hohouhouhou", 1).show();webView.goBack();return true;} else {return super.onKeyDown(keyCode, event);}}
// 后退操作 android2.0@Overridepublic void onBackPressed() {Toast.makeText(this, "后退键", 1).show();// 判断是否能够回退if (webView.canGoBack()) {webView.goBack();// 返回} else {super.onBackPressed();}}
2.第二种实现步骤
把第一种实现步骤的1,2两个步骤改成:如下操作
public class MainActivity extends Activity {private WebView webView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);// 创建控件对象webView = new WebView(this); // 设置显示的视图为创建的控件即可 setContentView(webView);}
备注:关于WebSettings与WebViewClient常用方法的说明
WebSettings常用方法:
setAllowFileAccess 启用或禁止WebView访问文件数据setBlockNetworkImage 是否显示网络图像setBuiltInZoomControls 设置是否支持缩放setCacheMode 设置缓冲的模式setDefaultFontSize 设置默认的字体大小setDefaultTextEncodingName 设置在解码时使用的默认编码setFixedFontFamily 设置固定使用的字体setJavaSciptEnabled 设置是否支持JavascriptsetLayoutAlgorithm 设置布局方式setLightTouchEnabled 设置用鼠标激活被选项setSupportZoom 设置是否支持变焦
WebViewClient常用方法:
doUpdateVisitedHistory 更新历史记录onFormResubmission 应用程序重新请求网页数据onLoadResource 加载指定地址提供的资源onPageFinished 网页加载完毕onPageStarted 网页开始加载onReceivedError 报告错误信息onScaleChanged WebView发生改变shouldOverrideUrlLoading 控制新的连接在当前WebView中打开还是在系统浏览器中打开
0 0
- 15_android-WebView的简单实用介绍
- Android WebView的简单实用
- 简单介绍WebView的使用
- WebView的简单使用以及属性介绍
- xheditor文本编辑器的简单实用介绍
- Handler的简单实用和介绍
- protocol的介绍与简单实用
- category的介绍与简单实用
- WebView使用简单介绍
- CocosPod 简单实用介绍
- IOS WebView 简单使用介绍
- Android WebView使用简单介绍
- DX10中的几何着色器的简单实用介绍
- LIST_ENTRY的介绍以及简单实用(未完待续)
- 介绍简单实用APP动画效果的两个关键
- 介绍简单实用APP动画效果的两个关键
- WebView的详细介绍
- WebView的介绍
- 动态链接库和静态链接库
- JAVA多线程和并发基础面试问答
- VS2010 常用快捷键
- java设计模式之四:代理模式 java静态代理和动态代理
- 十二、对象的使用(一) static成员变量、static成员函数、类/对象大小计算
- 15_android-WebView的简单实用介绍
- Matlab-问题-警告:名称不存在或不是目录:C:\MinGW32-xy\bin
- 如何在同一台电脑上同时运行2个tomcat
- Sum Root to Leaf Numbers
- 从一个字符串去除多余的空格
- elya:给移动App创业者的工具集
- u-boot-2014.04移植FL2440(uboot编译编)
- GOOD悟透JavaScript
- 深入Java关键字null