博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android开发填坑之setUseWideViewPort
阅读量:4029 次
发布时间:2019-05-24

本文共 625 字,大约阅读时间需要 2 分钟。

现象

项目中的“浏览器组件”(对Webview的封装,用于浏览网页)在加载bilibili个人主页()时排版错乱。

效果如下图所示:
这里写图片描述
正常的效果如下图所示:(使用chrome UA换成Android的UA)
这里写图片描述

分析

使用对比法看看其它浏览器(Anroid chrome,手机自带浏览顺,UC浏览器)的效果,都正常

初步结论就是我们自己的问题了(打开的方式不对!!)
接着 排除法,先看看是不是UA的问题,把chrome的UA换成我们应用的UA,效果也正常。
那只能去看使用Webview的配置了
通过review代码找到了webview settings的配置代码

private void initBrowserFeature(){       WebSettings webSettings = getSettings();       webSettings.setLoadWithOverviewMode(true);       webSettings.setUseWideViewPort(false);//这里需要设置为true,才能让Webivew支持
标签的viewport属性 ......

看看Android api 文档的说明 >>

这里写图片描述

经验

使用Webiew时最好设置setUseWideViewPort为true

页面

bilibili个人主页,html代码如下,注意红圈处的代码(viewport参数的设置)

这里写图片描述

你可能感兴趣的文章
jQuery性能优化指南
查看>>
Oracle 物化视图
查看>>
Multi-Task Networks With Universe, Group, and Task Feature Learning-阅读笔记
查看>>
A Survey of Zero-Shot Learning: Settings, Methods, and Applications-阅读笔记
查看>>
Cross-Domain Review Helpfulness Prediction -论文阅读
查看>>
NLP数据增强方法-(一)
查看>>
BERT+实体-百度ERNIE优化了啥
查看>>
NLP数据增强方法-动手实践
查看>>
学习让机器学会学习-Meta Learning课程笔记-1
查看>>
学习让机器学会学习-Meta Learning课程笔记-2
查看>>
RNN及其变种LSTM/GRU/SRU
查看>>
我还不知道Attention有哪些-公式代码都带你搞定
查看>>
自学习-怎么让对话助手越来越强
查看>>
BERT-flow:bert的向量表达是SOTA吗?
查看>>
Preprocessing data-sklearn数据预处理
查看>>
Java实现Oracle到MySQL的表迁移
查看>>
子类A继承父类B, A a = new A(); 则父类B构造函数、父类B静态代码块、父类B非静态代码块、子类A构造函数、子类A静态代码块、子类A非静态代码块 执行的先后顺序是?
查看>>
android:style和theme
查看>>
wait()、notify()和notifyAll()、sleep()、Condition、await()、signal()
查看>>
Arrays.asList()
查看>>