在最近的项目开发中,使用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显示冲突,还不得而知,也希望有牛人能给予解答。

更多相关文章

  1. 【Android】 ImageView.ScaleType设置图解
  2. Android利用Get/Post方式异步请求Json数据,显示在ListView中
  3. Android(安卓)SystemUI之启动流程(一)
  4. android显示单位
  5. [置顶] android仿最新版本微信相册--附源码
  6. Android(安卓)RecyclerView之ListView显示(二)
  7. android图库竖屏不显示status bar的解决方法
  8. android启动页白屏的问题
  9. 【Android】ProgressBar圆形加载样式、进度条样式以及代码控制显

随机推荐

  1. 原:Android(安卓)获取屏幕高度、标题高度
  2. Android使用AchartEngine绘制曲线图
  3. android:TextAppearance.Material.Widget
  4. Android(安卓)Weak Handler:可以避免内存
  5. Android自定义样式
  6. android情景模式切换的实现
  7. Android的BUG(三) - 广为人知的诟病:频繁重
  8. eclipse android基础开发
  9. android gps开发必备资料(含测试demo下载
  10. Android Room联合AsyncListUtil实现Recyc