在对话框片段上显示 ProgressBar

Show ProgressBar over Dialog Fragment

我有一个扩展 DialogFragment 的 class,我想在其中显示一个全屏加载器。问题是 ProgressBar 显示在 DialogFragment 后面,而不是在它上面,这是我想要的。

为了显示 ProgressBar 我使用这个 library 并且我只是将 SpinKitView 放在 DialogFragment 布局中

.

您可以使用带有 2 个视图的 frameLayout(这样 1 个视图在另一个视图之上)或约束布局,这里是使用约束布局的示例:

   <androidx.constraintlayout.widget.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <Button
        android:id="@+id/button"
        android:layout_width="143dp"
        android:layout_height="168dp"
        android:text="Button"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.432" />

    <ProgressBar
        android:id="@+id/progressBar"
        style="?android:attr/progressBarStyle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="8dp"
        app:layout_constraintBottom_toTopOf="@+id/button"
        app:layout_constraintEnd_toEndOf="@+id/button"
        app:layout_constraintStart_toStartOf="@+id/button"
        app:layout_constraintTop_toBottomOf="@+id/button"
        />
</androidx.constraintlayout.widget.ConstraintLayout>

我知道这有点晚了,但我想我会在这里给出一个答案,这样它可能会帮助未来陷入困境的人。 @ghita 是否可以将其标记为解决了您的问题?

 <androidx.constraintlayout.widget.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

<Button android:id="@+id/button"
    android:layout_width="143dp"
    android:layout_height="168dp"
    android:text="Button"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintVertical_bias="0.432" />

<ProgressBar
    android:id="@+id/progressBar"
    style="?android:attr/progressBarStyle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="8dp"
    android:elevation="27dp"
    app:layout_constraintBottom_toTopOf="@+id/button"
    app:layout_constraintEnd_toEndOf="@+id/button"
    app:layout_constraintStart_toStartOf="@+id/button"
    app:layout_constraintTop_toBottomOf="@+id/button"/>

</androidx.constraintlayout.widget.ConstraintLayout>