棒棒糖前设备中的 Snackbar 高度太大
Posted
技术标签:
【中文标题】棒棒糖前设备中的 Snackbar 高度太大【英文标题】:Snackbar height is too large in pre-lollipop devices 【发布时间】:2017-07-08 06:35:50 【问题描述】:我有什么
我在我的应用程序中使用 Design Support 库中的 Snackbar。我曾经在我的应用程序中以 API 级别 23 为目标,但在我开始以 API 级别 24 为目标后开始注意到一个奇怪的问题。
问题
该问题仅发生在棒棒糖之前的设备上,例如 Kitkat 和 Jellybean。对于 Lollipop 及以上设备来说非常好。 SnackBar 的高度与其标准尺寸相比太大了(请查看下面的屏幕截图)。
当我使用设计支持库并以 API 23 为目标时
compile 'com.android.support:design:23.4.0'
一切正常。但是当我开始瞄准 API 24 并使用时,
compile 'com.android.support:design:24.2.1'
问题开始出现。
其他人有同样的问题吗?我可能做错了什么吗?如何在不降低目标SDK的情况下修复?
【问题讨论】:
我自己没有遇到这个问题,但这可能是一个替代方案:***.com/a/33441214/3507492 我会研究替代方案。那么,您是否以 API 24 为目标并使用设计支持库 24.2.1,但在 Kitkat 设备中没有看到此问题? 使用设计支持库 25.1.1 定位 API 25,没有遇到此类问题。 您是否尝试过检查 Android Studio 模拟器 4.4 版?我目前在 Kitkat 上没有真正的设备,所以必须检查模拟器。会不会是模拟器特有的错误? 你解决了这个问题吗? 【参考方案1】:这个可以解决
Snackbar snackbar = Snackbar.make(getRoot(), text, duration);
if (Build.VERSION.SDK_INT == Build.VERSION_CODES.KITKAT)
snackbar.getView().setFitsSystemWindows(false);
snackbar.show();
【讨论】:
以上是关于棒棒糖前设备中的 Snackbar 高度太大的主要内容,如果未能解决你的问题,请参考以下文章