Android横屏加入webview后字体和间距错乱

问题遇到的现象和发生背景

Android横屏后切进其他页面后在切进自己app字体间距发生错乱

遇到的现象和发生背景,请写出第一个错误信息

1.Android pad端进行项目开发,要求项目全部横屏。
2.pad横屏时字体和间距都要比正常的小。比如竖屏时正常字体大小是16sp,横屏就会非常大。为此横屏正常字体我这边设置的是6sp,间距也差不多类似。
3.项目没有接入WebView时一切正常,接入WebView后进入页面后,打开本app,再打开其他应用,再通过后台的方式进入本app。点击其他按钮后所有页面发生变形。字体变小,间距变大。比如原来6sp字体是正常显示的,发生变形后16sp字体才是正常的。

用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
运行结果及详细报错内容

1.正常页面

img


2.进入其他应用后,后台回到本app

img

img


3.点击随便一个按钮显示其他页面后,所有页面发生变形

img

img

img

我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%

我尝试在启动页,登录页,主页加入了一个空的webview后,我的小米9手机上就正常了,但是模拟器和pad上还是会出现上述问题

我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”

在模拟器和pad上不管怎么切换app,都需要正常显示。

1、检查下 app 在横屏模式下的布局是否有问题。可以通过在横屏模式下进入后台,然后再从后台回到前台来观察是否会出现布局问题。如果出现了布局问题,可以试试调整布局代码,使其在横屏模式下正常显示。

2、在 app 中使用 Configuration.SCREENLAYOUT_SIZE_LARGE 或 Configuration.SCREENLAYOUT_SIZE_XLARGE 来指定 app 支持的屏幕大小。这样当 app 运行在大屏幕设备上时,它就会使用更大的字体和间距来适应屏幕大小。

3、在 app 中使用 Configuration.SCREENLAYOUT_LAYOUTDIR_RTL 或 Configuration.SCREENLAYOUT_LAYOUTDIR_LTR 来指定 app 支持的文本方向。这样当 app 运行在从右到左的语言环境中时,它就会正确显示文本。

4、在 app 中使用 Configuration.SCREENLAYOUT_LAYOUTDIR_LTR 来指定 app 使用的文本方向。这样即使 app 运行在从右到左的语言环境中,它也会使用从左到右的文本方向来显示文本。

5、在 app 中使用 Configuration.SCREENLAYOUT_LAYOUTDIR_RTL 来指定 app 使用的文本方向。这样即使 app 运行在从左到右的语言环境中,它也会使用从右到左的文本方向来显示文本。
望采纳。

检查是否有设置强制横屏模式,其次是在程序切换到后台时,保存当前状态,使得切换回来后不重新加载webview页面。

使用的activity还是fragment,activity加载webview在平板适配上会有这个问题,换做隐藏的fragment,与activitiy生命周期关联,然后在fragment中放置webview就可以了

https://dandelioncloud.cn/article/details/1561706286561849346


为了解决这个问题,需要对WebView进行一个设置。在页面加载之前加上一下代码:

webview.getWebSetting().setTextZoom(100);

参考下这个实例【Androin学习笔记五十九:Android横竖屏切换总结】,链接:https://dandelioncloud.cn/article/details/1561706286561849346