接手一个比较老的应用,并没有去适配现在哪哪都是的大高宽比的手机屏幕,直到上小米市场时被打回,在红米6p上有黑边。只好把这个坑填上,顺便做了更多的适配。
虽然布局全是 match_parent 但是就是有黑边,问题在于Android默认了一个最大的高宽比例,就是高宽比1.86,差不多16:9的常见样式,多出一点来也都能行。但是现在红米6p是19:9 ≈ 2.1??超过默认值很远,很棒棒。只能手动改下配置了。(targetSdkVersion >24应该不会出现这种问题)
解决问题
在 AndroidManifest.xml 的 <application> 标签里加入
<meta-data android:name="android.max_aspect" android:value="2.2" />
或者更大,据我了解mix3,19.5:9,越来越长可以写稍微大点留一些余地
或者
在AndroidManifest中针对Activity标签添加
android:resizeableActivity = “true”
也可以实现全屏显示,但此设置只针对Activity生效,且增加了此属性该activity也会支持分屏显示。
跟多的全面屏适配优化可以看下这篇文章~
Android APP适配全面屏手机的技术要点
以及这个自动适配的方案(和解决黑边问题无关)
今日头条屏幕适配方案终极版正式发布
网友评论