繁体   English   中英

Android - BottomSheetDialog 在软件 NavigationBar 下

[英]Android - BottomSheetDialog is under software NavigationBar

我对 BottomSheetDialog 和软件导航栏有疑问。 如果我创建 BottomSheetDialog:

    BottomSheetDialog mBottomSheetDialog = new BottomSheetDialog(mContext);
    View sheetView = inflater.inflate(R.layout.bottom_sheet_sentence, (ViewGroup)view.getParent(), false);
    mBottomSheetDialog.setContentView(sheetView);
    mBottomSheetDialog.show();

然后在带有软件导航栏的设备上,对话框显示在导航栏下方/下方(在此示例中,它是带有 Android 7.0 的平板电脑,它不那么明显,但第二个按钮位于导航栏下方):

在此处输入图像描述

如何在导航栏上方添加 BottomSheetDialog?

诠释主题= R.style.BottomSheetDialogTheme;

BottomSheetDialog mBottomSheetDialog = newBottomSheetDialog(上下文,主题);

在 style.xml 中添加此代码

 <style name="BottomSheetDialogTheme" parent="BaseBottomSheetDialog">
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

我认为您的问题是您没有定义 window 系统 UI 标志。

请检查这个相关问题

我通常使用这种方法来防止我的单个组件或视图组在软导航栏下膨胀

MyActivity.getWindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM