Android 15中WindowInsets变更致FAB底部冗余边距的修复方法
Android 15上Compose Material3 Scaffold的FAB出现底部冗余内边距问题
自Android 15起,WindowInsets的处理逻辑发生变更,我遇到了Android 14及以下版本不存在的问题:使用androidx.compose.material3.Scaffold的floatingActionButton属性时,FAB底部出现了冗余的内边距或外边距,该问题仅在Android 15上出现。
现象总结
- Android 15上的FAB底部存在额外内边距,被向上推离屏幕边缘
- 不同版本间未修改布局XML,也无代码层面的内边距/外边距调整逻辑
- 推测问题与Android 15的Insets处理有关,尤其是新旧
WindowInsets版本交互的场景
版本对比
- Android 14及以下版本:FAB显示正常,无额外内边距
- Android 15:FAB底部有冗余内边距,位置明显偏移
问题截图

已尝试的解决方法
- 检查FAB的布局XML,确认无显式内边距/外边距设置
- 排查全部代码,确认无动态修改内边距/外边距的逻辑
- 尝试调用
setPadding()和setMargin()方法手动调整空间,未解决问题 - 研究
WindowInsetsCompat的处理方式,但尚未找到可行方案
求助问题
如何消除Android 15上FAB底部的冗余内边距/外边距,同时保证Android 14及更早版本的布局一致性?
内容的提问来源于stack exchange,提问作者Klemens Zleptnig
相关产品推荐
相关产品推荐

