H5获取MySQL的值画折线图_webview加载显示H5折线图展示

本文介绍了如何在Android应用中使用WebView加载H5页面,并通过设置相关属性使其能够正确显示折线图。同时,文章提到了WebView与JS交互的实现方式,以及如何处理加载过程中的状态,如使用LoadManager进行页面加载状态的管理,避免白屏问题。最后,提供了多个关于WebView与JS交互、性能优化等相关链接供进一步学习。
摘要由CSDN通过智能技术生成

5a161d35cbcc?utm_campaign

以上2行代码会造成h5折线图展示不了

WebView的基本属性配置 http://blog.csdn.net/u014772832/article/details/49341523

WebView各种属性详解 http://blog.csdn.net/cgq1030699125/article/details/52637774

// 在自己的app中加载网址

finalWebSettings settings =mWebView.getSettings();

/* 设置支持Js,必须设置的,不然网页基本上不能看 */

mWebView.getSettings().setJavaScriptEnabled(true);

/* 设置缓存模式,我这里使用的默认,不做多讲解 */

mWebView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);

/* 设置为true表示支持使用js打开新的窗口 */

mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);

/* 大部分网页需要自己保存一些数据,这个时候就的设置下面这个属性 */

mWebView.getSettings().setDomStorageEnabled(true);

/* 设置为使用webview推荐的窗口 */

mWebView.getSettings().setUseWideViewPort(true);

/* 设置网页自适应屏幕大小 ---这个属性应该是跟上面一个属性一起用 */

mWebView.getSettings().setLoadWithOverviewMode(true);

/* HTML5的地理位置服务,设置为true,启用地理定位 */

mWebView.getSettings().setGeolocationEnabled(true);

/* 设置是否允许webview使用缩放的功能,我这里设为false,不允许 */

mWebView.getSettings().setBuiltInZoomControls(false);

/* 提高网页渲染的优先级 */

mWebView.getSettings().setRenderPriority(RenderPriority.HIGH);

/* 设置显示水平滚动条,就是网页右边的滚动条.我这里设置的不显示 */

mWebView.setHorizontalScrollBarEnabled(false);

/* 指定垂直滚动条是否有叠加样式 */

mWebView.setVerticalScrollbarOverlay(true);

/* 设置滚动条的样式 */

mWebView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);

/* 这个不用说了,重写WebChromeClient监听网页加载的进度,从而实现进度条 */

mWebView.setWebChromeClient(newWebChromeClient());

/* 同上,重写WebViewClient可以监听网页的跳转和资源加载等等... */

mWebView.setWebViewClient(newWebViewClient());

补充  :1. shouldOverrideUrlLoading表示当前webView中的一个新url需要加载时,给当前应用程序一个处理机会,如果没有重写此函数,webView请求ActivityManage选择合适的方式处理请求,就像弹出uc和互联网让用户选择浏览器一样。重写后return true表示让当前程序处理,return false表示让当前webView处理

2. 在 onPageFinished方法里添加一个加载转圈的方法,可以起到一个过度白屏的问题,当webview 加载H5页面完毕,转圈自动消失

3.下面代码主要是解释如何引用封装好的转圈显示的代码

webFrameLayout= (FrameLayout) findViewById(R.id.webFrameLayout);

mLoadManager=newLoadManager(webFrameLayout);

mWebView=newWebView(getApplicationContext());

webFrameLayout.addView(mWebView,0);

成功时在onPageFinished方法里添加 mLoadManager.showPageSafe(LoadManager.STATE_SUCCESS);

其它状态一一对应就行  :mLoadManager.showPageSafe(LoadManager.STATE_EMPTY);

mLoadManager.showPageSafe(LoadManager.STATE_ERROR);

要想进一步理解得去看LoadManager  类的 代码

下面是webview 与js 交互的相关链接

http://www.jb51.net/article/84957.htm

http://www.cnblogs.com/fx2008/p/5809620.html             webview与js交互的demo  成功验证过得

http://blog.csdn.net/goo_x/article/details/50823523          Android WebView - 全面总结(概述、捕获url、js交互、小技巧、内存泄漏、缓存机制)

https://www.zhihu.com/question/31316646                       Android WebView 在开发过程中有哪些坑?

https://tech.meituan.com/WebViewPerf.html                    WebView性能、体验分析与优化

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值