在最近的项目开发中,使用webview加载html页面,这样可以节省大量页面开发的时间,同时也可加快项目进度。

我们需求是需要显示商品评论,页面设计如下:

调用android代码,对于webview的设置如下:

webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setBuiltInZoomControls(true);
webView.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);
webView.getSettings().setDefaultTextEncodingName("UTF-8");

在展示数据的时候,出现问题。实际效果如下:

这里物流速度和产品质量无法显示.

html的关键代码如下:

switch (jsonForCreat.DATA[i].QUALITYLEVEL){
case '1':
$("#q"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 515px");
break;
case '2':
$("#q"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 535px");
break;
case '3':
$("#q"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 555px");
break;
case '4':
$("#q"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 575px");
break;
case '5':
$("#q"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 595px");
break;
default :
$("#q"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 595px");
break;
}
switch (jsonForCreat.DATA[i].SPEEDLEVEL){
case '1':
$("#s"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 515px");
break;
case '2':
$("#s"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 535px");
break;
case '3':
$("#s"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 555px");
break;
case '4':
$("#s"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 575px");
break;
case '5':
$("#s"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 595px");
break;
default :
$("#s"+jsonForCreat.DATA[i].KEY_ID).css("background-position", "0px 595px");
break;
}

在仔细对比所有的数据格式无误,对比ios,发现:

同样的html页面,同样的数据,这个页面在ios上显示正常,在android上就是无法显示物流速度和产品质量的评价星数。

最后在比对webview设置的时候,将webview属性

webView.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);

注释掉以后,发现显示正常了,

查询资料得知:

SINGLE_COLUMN:把所有内容放到WebView组件等宽的一列中。

这个属性至于为何与html显示冲突,还不得而知,也希望有牛人能给予解答。

android html 与webview属性从冲突的更多相关文章

  1. Android学习之 WebView使用小结

    这段时间基于项目须要 在开发中与WebView的接触比較多,前段时间关于HTML5规范尘埃落定的消息出如今各大IT社区头版上,更有人说:HTML5将颠覆原生App开发 尽管我不太认同这一点 可是关于H ...

  2. android 下 利用webview实现浏览器功能

    android 下 利用webview实现浏览器功能(一): 1.界面添加WEBVIEW控件. 2.在界面.JAVA代码页面(protected void onCreate(Bundle savedI ...

  3. Android中的WebView进行直接加载网页(要注意解决权限问题)

    我们都知道Android的网络功能很不错,当然Android中WebView组件也挺不错,可以直接进行加载网页,我们可以把这个看做一个小型的浏览器\ [注]以下的一些内容我翻译了一下文档,可能有些翻译 ...

  4. Android应用开发 WebView与服务器端的Js交互

    最近公司再添加功能的时候,有一部分功能是用的html,在一个浏览器或webview中展示出html即可.当然在这里我们当然用webview控件喽 WebApp的好处: 在应用里嵌套web的好处有这么几 ...

  5. Android 如何设置 WebView 的屏幕占比

    Android 如何设置 WebView 的屏幕占比 由于 Android 适用于具有各种屏幕尺寸和像素密度的设备,因此您在设计网页时应将这些因素纳入考虑范围,以便您的网页始终以合适的尺寸显示. We ...

  6. Android:让WebView支持<input type=”file”…>元素

    最近在做一个活动页面:用户上传一张图片进行缩放.旋转后点击下一步填写内容后生成图片! 做好后经过各种测试是没有问题的,基本没有什么明显BUG,流程都能走通,但是嵌入到APP后,问题就来了! 在IOS上 ...

  7. android中xml tools属性详解

    第一部分 安卓开发中,在写布局代码的时候,ide可以看到布局的预览效果. 但是有些效果则必须在运行之后才能看见,比如这种情况:TextView在xml中没有设置任何字符,而是在activity中设置了 ...

  8. Android中脱离WebView使用WebSocket实现群聊和推送功能

    WebSocket是Web2.0时代的新产物,用于弥补HTTP协议的某些不足,不过他们之间真实的关系是兄弟关系,都是对socket的进一步封装,其目前最直观的表现就是服务器推送和聊天功能.更多知识参考 ...

  9. Android读取自定义View属性

    Android读取自定义View属性 attrs.xml : <?xml version="1.0" encoding="utf-8"?> < ...

随机推荐

  1. Xperf Basics: Recording a Trace(转)

    http://randomascii.wordpress.com/2011/08/18/xperf-basics-recording-a-trace/   This post is obsolete ...

  2. NBIbatis 微信框架

    微信框架 必须先完成NBIbatis基础框架的[框架配置],本项目才能正常运行. 漂亮会议展示 这是一套漂亮的会议展示完整界面/ ForePages/ HomePage_1210.htm Wechat ...

  3. C#与数据库访问技术总结(十)之添加&删除

    说明:上一篇文章写了更新数据,接下来就是添加和删除数据了. 添加记录 从程序员的角度看,向数据库中添加新的记录与更改现有记录没有任何区别. 为SQL INSERT命令或者存储过程创建一个Command ...

  4. 单线程&浏览器多线程

    知乎答案:http://www.zhihu.com/question/31982417/answer/54136684 copy大牛的好文:from http://www.cnblogs.com/Ma ...

  5. HTTP协议之chunk编码(分块传输编码

    Transfer-Encoding: chunked 表示输出的内容长度不能确定,普通的静态页面.图片之类的基本上都用不到这个. 但动态页面就有可能会用到,但我也注意到大部分asp,php,asp.n ...

  6. vs emulator for android使用

    在windows上调试android程序,可以利用hyperv虚拟化功能,微软也提供了模拟工具和android studio.eclipse的配置说明,不再累述. 关于启动vs模拟器的cmd命令: e ...

  7. Java的从浅至深绕坑而行的学习

    package day02; /** * 1:java初学习,避免面试时一些HR挖的坑. * @author biexiansheng * */ public class Test02 { publi ...

  8. windows远程连接Linux(Ubuntu)的方法

    需要做的工作: 1.在Linux(Ubuntu)端安装.设置好SSH 2.下载putty,并通过putty的SSH连接登录Linux 一 .如何在Linux(Ubuntu)端安装.设置好SSH,获取I ...

  9. FPGA4U FPGA SDRAM Controller

    -- https://fpga4u.epfl.ch/wiki/FPGA4U_Description -- The SDRAM bits data ..> signals, -- one ..&g ...

  10. cygintl-8.dll 是cygwin的哪个包?|Windows查看man手册的方法-cygwin

    答案是: 是 Release\gettext\libintl8\libintl8-0.18.1.1-2.tar.bz2 应该是gettext 项目的一部分吧. 下载地址 可以直接从 cygwin的镜像 ...