WebView组件 Android安卓开发课件技术方案.pptx

上传人:b****9 文档编号:58575 上传时间:2022-10-01 格式:PPTX 页数:33 大小:1.83MB
下载 相关 举报
WebView组件 Android安卓开发课件技术方案.pptx_第1页
第1页 / 共33页
WebView组件 Android安卓开发课件技术方案.pptx_第2页
第2页 / 共33页
WebView组件 Android安卓开发课件技术方案.pptx_第3页
第3页 / 共33页
WebView组件 Android安卓开发课件技术方案.pptx_第4页
第4页 / 共33页
WebView组件 Android安卓开发课件技术方案.pptx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

WebView组件 Android安卓开发课件技术方案.pptx

《WebView组件 Android安卓开发课件技术方案.pptx》由会员分享,可在线阅读,更多相关《WebView组件 Android安卓开发课件技术方案.pptx(33页珍藏版)》请在冰豆网上搜索。

WebView组件 Android安卓开发课件技术方案.pptx

Android开发实战经典第12章:

网络通信WebView组件李兴华北京魔乐科技软件学院本章目标E-MAIL:

理解WebView组件的主要作用;可以使用HTML进行Android显示界面的开发;可以通过WebView实现本地程序与Javascript的互调用;可以使用Javascript调用本地Android程序。

WebView组件E-MAIL:

WebView是一个开放的浏览器组件,是基于WebKit内核开发出来的,像苹果的Safari、GoogleChrome浏览器都是通过WebView实现的,而在Android系统之中,默认也提供了WebView组件的支持,用户可以直接使用WebView组件显示网页的内容,或者是将一些指定的HTML文件嵌入进来,除了支持各个浏览器的“前进”、“后退”等功能之外,最为强大的是在WebView组件之中也支持Javascript的操作。

android.webkit.WebView的继承结构如下所示:

java.lang.Objectandroid.view.Viewandroid.view.ViewGroupandroid.widget.AbsoluteLayoutandroid.webkit.WebViewWebView组件的常用方法(A)E-MAIL:

No.方法类型描述1publicWebView(Contextcontext)构造取得WebView类的实例化对象2publicvoidaddJavascriptInterface(Objectobj,StringinterfaceName)普通绑定一个Javascript的对象3publicbooleancanGoBack()普通判断能否实现后退操作4publicbooleancanGoBackOrForward(intsteps)普通判断是否可以后退或前进指定步数5publicbooleancanGoForward()普通判断是否可以前进6publicbooleancanZoomIn()普通判断是否可以缩小7publicbooleancanZoomOut()普通判断是否可以放大8publicvoidclearCache(booleanincludeDiskFiles)普通清空缓存,如果是false则只清空RAM9publicvoidclearFormData()普通清空表单的填写记录10publicvoidclearHistory()普通清空历史信息11publicintgetProgress()普通得到访问进度12publicStringgetTitle()普通取得当前访问页面的标题13publicvoidgoBack()普通后退一步WebView组件的常用方法(B)E-MAIL:

No.方法类型描述14publicvoidgoBackOrForward(intsteps)普通后退或前进指定的步数15publicvoidgoForward()普通前进一步16publicvoidloadData(Stringdata,StringmimeType,Stringencoding)普通通过指定的字符串进行页面的加载17publicvoidloadUrl(Stringurl)普通读取指定的URL地址数据18publicvoidreload()普通重新加载页面19publicvoidsavePassword(Stringhost,Stringusername,Stringpassword)普通保存密码20publicvoidsetDownloadListener(DownloadListenerlistener)普通对下载文件进行进行监听21publicvoidsetWebChromeClient(WebChromeClientclient)普通使用GoogleChrome作为客户端22publicvoidsetWebViewClient(WebViewClientclient)普通使用WebView作为客户端23publicbooleanzoomIn()普通缩小24publicbooleanzoomOut()普通放大25publicWebSettingsgetSettings()普通返回WebSettings对象E-MAIL:

E-MAIL:

范例:

定义Activity程序publicclassMyWebViewDemoextendsActivity/文本输入组件/WebView组件privateEditTextinputurl=null;privateButtonopen=null;/按钮组件privateWebViewwebview=null;OverridepublicvoidonCreate(BundlesavedInstanceState)super.onCreate(savedInstanceState);super.setContentView(R.layout.main);/默认布局管理器this.inputurl=(EditText)super.findViewById(R.id.inputurl);/取得组件this.open=(Button)super.findViewById(R.id.open);/取得组件this.webview=(WebView)super.findViewById(R.id.webview);/取得组件this.open.setonclickListener(newOpenonclickListenerImpl();/设置单击事件E-MAIL:

范例:

修改AndroidManifest.xml文件配置权限E-MAIL:

范例:

读取字符串信息E-MAIL:

范例:

定义布局管理器main.xml线性高度为屏幕高度MAIL:

E-布局管理器高度为屏幕高度组件范例:

定义Activity程序packageorg.lxh.demo;importandroid.app.Activity;importandroid.os.Bundle;importandroid.webkit.WebView;publicclassMyWebViewDemoextendsActivityprivateWebViewwebview=null;/WebView组件OverridepublicvoidonCreate(BundlesavedInstanceState)super.onCreate(savedInstanceState);super.setContentView(R.layout.main);/默认布局管理器this.webview=(WebView)super.findViewById(R.id.webview);/取得组件Stringdata=MLDNJavaTraining.E-MAIL:

范例:

实现自己的浏览器E-MAIL:

范例:

定义HTML显示界面E-MAIL:

设置HTML文件的保存路径*.html文件被保存在了assets/html文件夹之中,这样以后Activity程序在通过WebView组件进行访问的时候,只需要在loadUrl()中填写以下的路径信息即可。

范例:

访问项目中的show_js.html文件file:

/android_asset/html/show_js.htmlE-MAIL:

范例:

定义包含Javascript的HTML文件functionopenurl(url)window.location=url;E-MAIL:

height=220imgsrc=http:

/view-width=150请选择您要浏览的网站:

MLDN魔乐科技软件学院E-范例:

定义布局管理器main.xml线性布局管理器高度为屏幕高度高度为屏幕高度MAIL:

E-范例:

定义Activity程序,读取HTML文件packageorg.lxh.demo;importandroid.app.Activity;importandroid.os.Bundle;importandroid.webkit.WebView;publicclassMyWebViewDemoextendsActivityprivateWebViewwebview=null;OverridepublicvoidonCreate(BundlesavedInstanceState)super.onCreate(savedInstanceState);super.setContentView(R.layout.main);/默认布局管理器this.webview=(WebView)super.findViewById(R.id.webview);/取得组件this.webview.getSettings().setJavascriptEnabled(true);/启用javascriptMAIL:

E-MAIL:

范例:

修改AndroidManifest.xml文件配置权限EMWebChromeClient使用WebView也可以专门处理Javascript返回的警告框、确认框等互操作,而此时就需要使用android.webkit.WebChromeClient这个客户端处理的操作类完成。

No.方法类型描述1publicvoidoncloseWindow(WebViewwindow)普通窗口关闭操作2publicbooleanonCreateWindow(WebViewview,booleandialog,booleanuserGesture,MessageresultMsg)普通创建新的WebView-3publicbooleanonJsalert(WebViewview,Stringurl,StringJsRmeseussltargees,ult)AIL:

普通弹出警告框互操作范例:

本地程序与Javascript互操作E-MAIL:

范例:

定义HTML页面show_js.html魔乐科技软件学院:

functionopenalert()window.alert(魔乐科技软件学院nwww.MLDNJAVA.cn);functionopenConfirm()E-MAIL:

)if(window.confirm(是否删除此信息?

/确定删除JsResult类E-MAIL:

通过show_js.html页面,读者可以发现,在确认框中有一个询问是否删除的提示,如果确认删除则要跳转到“delete_js.html”文件执行删除操作,但是此时这个操作的执行也需要由Activity进行,而要想执行此操作则需要使用到android.webkit.JsResult类完成(例如:

在onJsConfirm()、onJsalert()方法中都有此参数),此类中定义了两个操作方法:

取消对话框:

publicfinalvoidcancel();确认操作:

publicfinalvoidconfirm();范例:

定义删除信息后的显示文件delete_js.htmlE-MAIL:

魔乐科技软件学院:

信息已删除!

importandroid.app.Activity;importandroid.app.alertDialog;importandroid.app.Dialog;importandroid.content.DialogInterface;importandroid.os.Bundle;importandroid.webkit.JsResult;importandroid.webkit.WebChromeClient;importandroid.webkit.WebView;importandr

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1