我试图在我的Android应用程序中创建一个全屏对话框,但我无法将其扩展到状态栏.您可以在下图中看到灰色状态栏.

EDIT 1:

enter image description here

alert 对话框创建:

    val builder = MaterialAlertDialogBuilder(this, R.style.FullscreenDialogStyle)
    val binding = DialogSuccessBinding.inflate(layoutInflater)
    binding.SuccessDialogMessage.text = getString(R.string.AddGuestCard_Success)
    builder.setView(binding.root)
    builder.background = ColorDrawable(getColor(R.color.primary))
    builder.setBackgroundInsetBottom(0)
    builder.setBackgroundInsetTop(0)
    builder.setBackgroundInsetStart(0)
    builder.setBackgroundInsetEnd(0)
    builder.show()

AlertDialog样式:

<style name="FullscreenDialogStyle" parent="Theme.AppCompat.NoActionBar">
    <item name="android:windowBackground">@color/primary</item>
    <item name="android:navigationBarColor">@color/primary</item>
    <item name="android:statusBarColor">@color/primary</item>
    <item name="android:layout_gravity">center</item>
    <item name="android:windowFullscreen">true</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">false</item>
</style>

推荐答案

是的,它有摄像头凹口

要通过覆盖相机凹口区域(剪切显示区域)使对话框成为全屏,需要使用对话框主题中的android:windowLayoutInDisplayCutoutMode属性将显示剪切显式调整为shortEdgesalways:

<style name="FullscreenDialogStyle" parent="Theme.AppCompat.NoActionBar">
    ....
    <item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
</style>

请在此输入check documentation,以便进一步研究;.

Android相关问答推荐

AdMob:MobileAds. initialize()—java. lang. xml对于某些设备不能强制转换为java. lang. String""

Android compose ,在图像中zoom 而不裁剪?

如何禁用Android 34+版的TileService,但保留以前的版本?

NativeScript在`ns run android`上重复Kotlin类

无法将非静态方法与Frida挂钩

在一列中垂直对齐两个框

Android studio应用判断无法打开离线数据库

升级到 Jetpack Compose 物料 list 2023.08.00 需要我将 targetSdk 更改为 34

页面标题未显示在内容页面上

如何在 Jetpack Compose 中处理水平滚动手势和变换手势

更改当前活动并返回后,Android webview 滚动不起作用

在段的中心绘制饼图(甜甜圈图)的图例

Android Studio XML 文本在 ConstraintLayout 中不居中

如何在 Delphi 和 Android 上避免 Indy Socket Error #13 Access denied 异常?

Koin Android-KMM:我有嵌套范围但注入不起作用

如何正确地将图像上传到 Jetpack Compose 中的 LazyList 中的项目?

自定义 Compose Arrangement 以在 LazyRow/LazyColumn 的开头和结尾添加额外的间距

如何在 Compose 中使用合并的单元格创建网格视图?

如何限制键盘输入键不允许在下一行输入(Android Jetpack Compose 中的 TextField)

Android 12 通过包管理器中断 APK 安装?