Android全面屏下,默认不会全屏显示,屏幕底部会留黑问题

前些天发现了一个蛮有意思的人工智能学习网站,8个字形容一下"通俗易懂,风趣幽默",感觉非常有意思,忍不住分享一下给大家。

👉点击跳转到教程

公司以前的老项目,便出现了这种情况,网上搜索了各种资料,用了各种库,依然无法解决这个问题。

如图所示:

最终功夫不负有心人,在Application中看到了,这样一个属性

android:resizeableActivity="false"

这个属性设置为了false,我们新建的项目,是没有这个属性的,然后我把这个属性设置为了true,底部黑条便没有了,实现了全面屏。

这个在小米开放中心,也有解释:

声明 Maximum Aspect Ratio

Android 标准接口中,支持应用声明其支持的最大屏幕高宽比(maximum aspect ratio)。具体声明如下,其中的 ratio_float 被定义为是高除以宽,以 16:9 为例,ratio_float = 16/9 = 1.778 (18:9则为2.0)。

bash 复制代码
<application>
    <meta-data android:name="android.max_aspect" android:value="ratio_float" />
</application>

若开发者没有声明该属性,ratio_float 的默认值为1.86,小于2.0,因此这类应用在全面屏手机上,默认不会全屏显示,屏幕底部会留黑。考虑到将有更多 19.5:9 甚至更长的手机出现,建议开发者声明 Maximum Aspect Ratio ≥ 2.2 或更多。值得一提的是,如果应用的 android:resizeableActivity 已经设置为 true,就不必设置 Maximum Aspect Ratio 了。详见 Android 官方文档

对应的地址:小米开放平台

这个属性的含义如下:

android:resizeableActivity 的默认值是 unspecified,而不是 true 或 false。

当 android:resizeableActivity 设置为 unspecified 时,系统将根据应用的最小宽度限制和其他因素来决定该 Activity 是否可以调整大小。大多数情况下,默认行为是允许 Activity 在多窗口模式下进行调整大小。

如果您想明确指定 Activity 可否调整大小,可以将 android:resizeableActivity 设置为 true 或 false。设置为 true 表示该 Activity 允许调整大小,设置为 false 表示禁止调整大小。

请注意,在 AndroidManifest.xml 中设置 android:resizeableActivity 并不能直接决定 Activity 是否可以调整大小,它只是一种声明。实际上,还需要考虑其他因素,如设备的支持程度、运行时权限等。

如果您想要确保 Activity 可以在多窗口模式下调整大小,请将 android:resizeableActivity 设置为 true。同时,建议在实际设备上进行测试,并参考 Android 官方文档以获取更详细的指导和最佳做法。

最终解决了这个问题,以后排查问题,一定要细心细心,再细心。

相关推荐
inmK13 小时前
蓝奏云官方版不好用?蓝云最后一版实测:轻量化 + 不限速(避更新坑) 蓝云、蓝奏云第三方安卓版、蓝云最后一版、蓝奏云无广告管理工具、安卓网盘轻量化 APP
android·工具·网盘工具
giaoho3 小时前
Android 热点开发的相关api总结
android
咖啡の猫4 小时前
Android开发-常用布局
android·gitee
程序员老刘5 小时前
Google突然“变脸“,2026年要给全球开发者上“紧箍咒“?
android·flutter·客户端
Tans55 小时前
Androidx Lifecycle 源码阅读笔记
android·android jetpack·源码阅读
雨白5 小时前
实现双向滑动的 ScalableImageView(下)
android
峥嵘life5 小时前
Android Studio新版本编译release版本apk实现
android·ide·android studio
彭刷子6 小时前
【Bug】Nexus无法正常启动的五种解决方法
bug·nexus
studyForMokey8 小时前
【Android 消息机制】Handler
android
敲代码的鱼哇8 小时前
跳转原生系统设置插件 支持安卓/iOS/鸿蒙UTS组件
android·ios·harmonyos