解决WebView加载URL跳转到系统浏览器的问题

1.问题


webview加载url跳转到系统浏览器,用户体验非常的差

2.解决方法


重写WebViewClientshouldOverrideUrlLoading(WebView view, String url)使用view.loadUrl(url);加载url

WebView webView= (WebView) findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("http://www.baidu.com");
webView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
    view.loadUrl(url);
    return super.shouldOverrideUrlLoading(view, url);
    }
});

3.效果


时间: 2024-10-28 10:20:41

解决WebView加载URL跳转到系统浏览器的问题的相关文章

使用webview加载网页时session同步

直接调用Android的webview加载URL时,由于需要登录的session导致URL无法显示,解决方案是在需要访问的URL中加session: String reporturl = "http://xxx.xxx.xx"; CookieSyncManager.createInstance(getApplication()); CookieManager cookieManager = CookieManager.getInstance(); CookieSyncManager.g

【android】只让本应用程序的webview加载网页而不调用外部浏览器的办法

只让本应用程序的webview加载网页,而不调用外部浏览器打开的办法就是:设置WebViewClient,并重写WebViewClient的shouldOverrideUrlLoading方法返回true mWebView.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { // TODO Auto-generated

【Android开发经验】使用WebView加载本地图片出现闪屏的解决方法

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 问题描述 运行环境 解决方案 问题描述 使用WebView加载本地图片的时候,也就是一段HTML代码嵌入本地的图片地址的形式,会出现短暂的灰色的闪烁,然后就可以正常显示图片了,WebView的背景颜色在xml中设置为黑色. 同时,出现这个问题的时候,Log会打印报错信息:nativeOnDraw failed; clearing to background color. 运行环境 nexus5 Andro

android中webView加载H5,JS不能调用问题的解决

使用了html5 页面,使用webView加载后发现 超链接的锚点不可以用 为webView设置下面两句就好了: mWebView.getSettings().setDomStorageEnabled(true);mWebView.getSettings().setDatabaseEnabled(true); 原文地址:https://www.cnblogs.com/netcorner/p/8207212.html

关于webview加载百度首页

这里以百度首页为例,先写好xml文件以及Java文件 我的news.xml文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width=&q

Android WebView加载本地html并实现Java与JS交互

最近做的一个项目中,用到自定义地图,将自定义地图转换成html页面,现在需要做的是如何将本地的html加载到android中,并可以实现交互. 相关讲解: 其实webview加载资源的速度并不慢,但是如果资源多了,当然就很慢.图片.css .js .html这些资源每个大概需要10-200ms ,一般都是30ms就ok了.不过webview是必须等到全部资源都完成加载,才会进行渲染的,所以加载的速度很重要!从Google上我们了解到,webview加载页面的顺序是:先加载html,然后从里面解析

Android Webview 加载外部html时选择加载本地的js,css等资源文件

在使用WebView加载网页的时候,有一些固定的资源文件如js的jquery包,css,图片等资源会比较大,如果直接从网络加载会导致页面加载的比较慢,而且会消耗比较多的流量.所以这些文件应该放在assets里面同app打包. 要解决这个问题需要用到API 11(HONEYCOMB)提供的shouldInterceptRequest(WebView view, String url) 函数来加载本地资源.在API 21又将这个方法弃用了,是重载一个新的shouldInterceptRequest,

Android开发必知--WebView加载html5实现炫酷引导页面

大多数人都知道,一个APP的引导页面还是挺重要的,不过要想通过原生的Android代码做出一个非常炫酷的引导页相对还是比较复杂的,正巧html5在制作炫酷动画网页方面比较给力,我们不妨先利用html5做出手机引导页面,然后将其嵌入APP中. 首先我们分析一下,都需要做哪些工作? 1.制作html5引导页面. 2.把做好的页面放入Android工程中assets文件夹下. 3.利用WebView加载asset文件夹下的html文件. 4.在引导页最后一页的按钮上捕捉点击事件,结束引导页,进入程序.

WebView加载完成与显示完成的区别

转载请加地址:http://blog.csdn.net/jing110fei/article/details/46649079 想到来总结个,是因为项目中遇到了这样一个问题,在一个布局里有一个WebView,紧跟着webView有一个Button,当进入这个页面的时候,因为webView在没有加载出来的缘故,页面最上部先显示了button,等webView加载完成后,可以很明显的看到button的移动. 为了解决这个事情,我先是想把Button GONE掉,然后做一个监听,等webView加载完