如何使 android 中对话框的背景透明?

How can I make the background of my dialog in android transparent?

我正在尝试使对话框的背景透明。我希望进度条显示在我的 activity 前面。不幸的是,背景始终保持白色。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/loading_cont"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:backgroundTint="#00000000"
android:background="@android:color/transparent"
>

<RelativeLayout
    android:id="@+id/loading_dialog_container"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:backgroundTint="#00000000"
    android:background="@android:color/transparent"
    >

    <ProgressBar
        android:id="@+id/login_progress"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerInParent="true" >
    </ProgressBar>

</RelativeLayout>

创建一个名为 transparent.xml 的新 Drawable Resource file

transparent.xml

<shape 
      android:shape="rectangle"
      xmlns:android="http://schemas.android.com/apk/res/android">
</shape>

现在设置android:background="@drawable/transparent"

在初始化对话框的地方添加这段代码

dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);

或者您也可以添加此代码

 dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));