Android和iOS系统都提供了标准的浏览器控件,在Android中是WebView,iOS中为UIWebView。在iOS中你实例化一 个UIWebView即可调用loadRequest来加载一个网页,但是在Android中你不仅需要创建一个WebView,还需要做一些其他的事 情,建议初次使用WebView的读者按照以下步骤使用:
(1)在要实现WebView的XML中添加一个WebView,并按照自己的要求进行排版,如下:
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center">
//添加一个WebView控件
<WebView
android:id="@+id/webView"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
//在当前Activity的中心位置放置一个不停转圈的加载进度条
<ProgressBar android:id="@+id/progressBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:visibility="gone"/>
</FrameLayout>
(2)在AndroidManifest.xml中添加网络访问权限,没有权限是访问不了网络的。
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
(3)在使用WebView的Activity中添加如下代码:
//获取WebView变量
WebView webView = (WebView)findViewById(R.id.webView);
//××××××××
//切记要添加下一行代码,因为Android中的WebView默认是不响应JavaScript控件的,如果不加下面这一行,就会出现一个很奇 怪的问题,网上也有很多人都在问,为什么加载的网页链接可以点击并跳转,但是按钮点了却没反应。因为很多网页的控件是通过JS编写的,所以要添加下面一行 代码以便响应JS控件。
webView.getSettings().setJavaScriptEnabled(true);
//××××××××
//加载一个网页
webView.loadUrl("http://www.baidu.com");
(4)处理页面加载状况回调,如开始加载网页,加载成功,加载超时等
//添加网页加载状况回调,这里使用了WebViewClient的匿名内部类方式,如果你不知道WebViewClient类有哪些可以响应的回 调函数的话,你可以在代码中选中WebViewClient,右键选择源代码--->覆盖/实现方法,在弹出的对话框中包含了 WebViewClient的所有可以覆盖的方法。如果不添加这个方法的话,当你点击网页中的链接时,会弹出一个框提示你使用哪种浏览器来打开这个链接。
webView.setWebViewClient(new WebViewClient(){
//网页加载开始时调用,显示加载提示旋转进度条
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
// TODO Auto-generated method stub
super.onPageStarted(view, url, favicon);
progressBar.setVisibility(android.view.View.VISIBLE);
// Toast.makeText(ElecHall.this, "onPageStarted", 2).show();
}
//网页加载完成时调用,隐藏加载提示旋转进度条
@Override
public void onPageFinished(WebView view, String url) {
// TODO Auto-generated method stub
super.onPageFinished(view, url);
progressBar.setVisibility(android.view.View.GONE);
// Toast.makeText(ElecHall.this, "onPageFinished", 2).show();
}
//网页加载失败时调用,隐藏加载提示旋转进度条
@Override
public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) {
// TODO Auto-generated method stub
super.onReceivedError(view, errorCode, description, failingUrl);
progressBar.setVisibility(android.view.View.GONE);
// Toast.makeText(ElecHall.this, "onReceivedError", 2).show();
}
});
相关推荐
android webview的用法总结
Android WebView控件的用法.
本文简单分析了Android webview用法。分享给大家供大家参考,具体如下: 在Android手机中内置了一款高性能webkit内核浏览器,在SDK中封装成名为WebView的组件。 WebView使用: (1)添加权限:AndroidManifest.xml中...
主要介绍了Android webview使用方法总结的相关资料,需要的朋友可以参考下
NULL 博文链接:https://lydia-fly.iteye.com/blog/2007257
android webview demo 。 用法参考:http://blog.csdn.net/zircon_1973/article/details/8067041
android使用webView实现java程序与js脚本的相互调用,
Android WebView打开网址浏览网页,实现浏览器打开网页的功能,需要为WebView设置WebChromeClient,要实现这个功能,需要几个步骤:用户输入网址,将焦点移到EditText供输入,然后判断用户输入的是否是网址,是网址...
用于展示Android之WebView的简单使用方法,结合博客使用效果更好哟 http://blog.csdn.net/shiquanqq/article/details/50912392
然而,如果使用chrome://Inspect的方法,国内的开发者会惊奇地发现“空白啊”!为此,我发布过这个离线包的解决方案!可以无需FanQ就能调试了。 2.本包主要为了解决调试webview(类似Chrome://inspect的功能)国内404...
主要介绍了android webview中使用Java调用JavaScript方法并获取返回值,本文直接给出代码示例,需要的朋友可以参考下
主要为大家详细介绍了Android WebView使用方法详解,文中附js交互调用方法,感兴趣的小伙伴们可以参考一下
android不使用webview与js交互
在Android开发过程中,使用过WebView的童鞋可能难免会遇到URL重定向问题。这篇文章主要介绍了Android Webview重定向问题解决方法,非常具有实用价值,需要的朋友可以参考下
Android使用WebView播放flash的方法和JavaScript调用本地方法
本案例演示webview和crosswalk支持webRTC的对比情况及基本使用方法,详情参见博客http://blog.csdn.net/nmyangmo/article/details/73105712
Android WebView的使用方法 Android app打开H5页一般要实现如下需求: 1、打开指定url网页; 2、点击链接可以跳转到下一页,并更新标题; 3、按back键或左箭头可以返回上一页; 4、当webview显示的是第一级url时...