本文原创,转载请保留原文地址:http://maosidiaoxian.iteye.com/blog/1547428
本文主要说两点内容:
1、webview中点击一个链接时,仍然在里面打开而不是用新的浏览器打开。
2、在webview加载时,显示“正在加载”的对话框,加载完毕之后,取消该对话框的显示。
方法很简单,webView中有一个setWebViewClient方法,如下:
mSearchWV.setWebViewClient(new WebViewClient() {
});
并且覆写里面的几个方法。代码如下:
webView.setWebViewClient(new WebViewClient() {
Dialog progressDialog = ProgressDialog.show(mContext, null,
mContext.getString(R.string.loading));
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
progressDialog.show();
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
progressDialog.cancel();
}
});
PS:上面的写法,在调用progressDialog.cancel();方法时,在某些情况下可能会引起程序崩溃,修改方法可参考我后面写的一篇博文:http://maosidiaoxian.iteye.com/blog/1547445
分享到:
相关推荐
本示例“android中webview加载本地页面,并处理js事件”着重讲解如何利用`WebView`加载本地HTML页面,并通过JavaScript Interface与Java代码进行交互,同时在HTML中动态生成组件如`button`。 1. **WebView基本使用**...
在 Android 中,使用 WebView 来加载网页时,会遇到 JavaScript 的 Alert、Confirm 和 Prompt 对话框的问题。这些对话框是浏览器默认的行为,但是在移动设备中,需要根据实际情况进行定制。以下将介绍如何在 Android...
本篇文章将详细介绍如何在Android的WebView中实现加载网页时在顶部显示进度条的功能。 首先,我们需要在布局文件中创建一个WebView和一个ProgressBar。ProgressBar通常会被设置为垂直或水平的条状指示器,用于展示...
然而,由于Android系统逐渐淘汰对Adobe Flash的支持,因此在尝试通过WebView加载Flash内容时,可能会遇到一些问题,如白屏现象。本文将深入探讨这个问题,并提供一种解决方案的源码。 一、问题分析 在Android 4.1...
在WebView开始加载页面时显示对话框,加载完成或出现错误时关闭对话框。例如: ```java webView.setWebViewClient(new WebViewClient() { @Override public void onPageStarted(WebView view, String url, Bitmap...
2. 在WebView的`WebViewClient`中重写`onPageStarted`和`onPageFinished`方法,以便在页面开始加载时显示加载动画,在页面加载完成后隐藏动画。 3. 将自定义加载视图与WebView进行布局管理,使其在合适的位置显示。 ...
总结起来,这个DEMO主要展示了如何在Android 4.0的WebView中加载Flash内容,并通过JavaScript接口实现Flash的全屏播放。由于Flash在现代移动设备上的支持逐渐减少,开发者应考虑逐步转向HTML5等更现代的技术。但在这...
本压缩包"安卓浏览器WebViewJSHTML5相关-androidwebview加载本地html.zip"提供了关于如何在Android中使用WebView加载本地HTML文件的相关示例和资料。 首先,我们要理解WebView的基本用法。在Android中,WebView是`...
在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中内嵌网页内容,实现与网页的交互。当涉及到安全的网络通信时,HTTPS协议因其数据加密和身份验证特性成为首选。本文将深入探讨如何在Android...
在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中加载和显示网页内容。有时候,我们不仅需要在Android代码中调用JavaScript,还需要让JavaScript能够反过来调用Android的Java方法,这种交互被...
2. **WebView加载失败**:如果WebView无法正常显示HTML内容,可以尝试以下方法: - 清理项目缓存(Build > Clean Project)。 - 重新编译项目(Build > Rebuild Project)。 - 检查HTML文件是否有语法错误。 ###...
在安全方面,我们应该注意防止XSS攻击和CSRF攻击,限制WebView加载的内容,并避免执行不受信任的JavaScript代码。此外,对于API 21及更高版本,可以启用Mixed Content模式以加载HTTPS页面上的HTTP资源: ```java if...
在Android应用开发中,Webview是一个非常重要的组件,它允许我们加载并运行网页内容,甚至与JavaScript进行交互。本文将详细讲解如何在Android的Webview中调用相册和拍照功能,以实现H5与原生Android应用的深度集成...
虽然Android原生的`WebView`不直接支持PDF,但在某些版本的Android系统中(如4.4 KitKat及以上),它可以通过内置的Chrome浏览器插件来显示PDF。以下是一个简单的示例: ```java WebView webView = new WebView...
为了显示和隐藏ProgressDialog,创建了一个Handler对象,用于在加载网页时显示进度对话框,加载完成时隐藏对话框。这里值得注意的是,使用`hide()`而非`dismiss()`或`cancel()`来隐藏ProgressDialog,因为后者会完全...
在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中加载和显示网页内容。同时,WebView还提供了Java代码与JavaScript交互的能力,使得我们可以利用JavaScript的灵活性和Android原生功能的强大...
本篇文章将深入探讨如何在Android应用中使用WebView加载HTML,并实现WebView与Html的交互。 首先,我们需要在布局XML文件中添加WebView组件。例如: ```xml <WebView android:id="@+id/webView" android:layout_...
在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中内嵌网页内容,实现与网页的交互。WebView不仅能够加载HTML、CSS和JavaScript,还可以调用原生Android API,从而构建混合型应用。本教程将...
在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中内嵌网页浏览功能,相当于在应用内部构建了一个小型的浏览器。WebView使用WebKit渲染引擎,能够很好地支持HTML、CSS、JavaScript等各种Web...
这个主题就是关于如何替换WebView在加载网页失败时显示的默认错误页面。 首先,我们来理解一下WebView的基本用法。在Android布局文件中,我们需要添加一个WebView元素: ```xml <WebView android:id="@+id/...