AndroidAutoSize icon indicating copy to clipboard operation
AndroidAutoSize copied to clipboard

重写getResources()华为手机异常, 使用副单位在小米12系统(MIUI 13.0.4和13.0.9)页面变形

Open aoguxiongxin opened this issue 3 years ago • 1 comments

image

上图是一个正常的页面.部分文字我打了马赛克, 主要是暂时页面的布局样式横屏 BaseActivity中重写了getResources()方法,在荣耀8X(EMIUI 10.0.0)和华为Mate40E 鸿蒙2.0系统,当前横屏页面跳转另外一个竖屏Activity,再返回之前的横屏页面, 很大几率造成页面内容丢失.如下图: image

如果不重写getResources()横竖屏切换回来,关闭实名页面到下一个页面会展示成竖屏的分辨率页面,页面变小.

后来想到用副单位布局,华为手机这个问题是解决了,重写getResources()方法,横竖屏切换也没事了,但是用红米Note 11Tpro+的一个手机一测试,页面布局错乱,很多控件显示不全,甚至页面展示出来之后,页面还会跳动调整, 本来按钮下面的内容没有显示, 之后又跳出来了, 给人的感觉就是页面在跳动, 其他手机暂未发现这个问题.如下图 image

上面的四行文字,有一行直接被覆盖隐藏,甚至还有几率最下面一行文字没有显示出来和提交信息按钮显示半块. image

后来果断放弃使用副单位了,继续用dp布局,想办法去解决华为和荣耀手机这个问题: 1.删除getResources()方法 2.在实名页面展示的后一个Fragment页面的onCreateView()或onCreate()方法中调用 AutoSize.autoConvertDensityBaseOnWidth(getActivity(), 640); 重新让这个Fragment页面适配一下,最后问题解决了.

aoguxiongxin avatar Jun 20 '22 01:06 aoguxiongxin

image 这是红米Note 11Tpro+手机配置参数,之后点击新版本升级到MIUI 13.0.9 还是一样有问题.

aoguxiongxin avatar Jun 20 '22 01:06 aoguxiongxin