如何实现在深色背景上运行的ProgressBar?

时间:2019-03-17 15:49:08

标签: java android android-layout android-progressbar

我已经成功地实现了ProgressBar,但是,我希望它显示在较暗的背景上,这样可以防止用户单击该层下的内容。

我目前正在尝试将视图对象用作填充层,该填充层仍允许用户单击按钮并输入文本

不建议使用“进度对话框”:https://developer.android.com/reference/android/app/ProgressDialog.html

我的布局文件:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/registerform"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".RegisterActivity">

<ProgressBar
    android:id="@+id/indeterminateBar"
    style="?android:attr/progressBarStyle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:visibility="gone"
    android:indeterminate="true"
    android:layout_marginStart="181dp"
    android:layout_marginTop="332dp"
    android:layout_marginEnd="182dp"
    android:layout_marginBottom="351dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<View
    android:id="@+id/bgblur"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:background="@color/common_google_signin_btn_text_dark_focused"
    android:visibility="gone"
    android:clickable="false"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:scrollbarStyle="insideInset"
    tools:layout_editor_absoluteX="0dp"
    tools:layout_editor_absoluteY="44dp">

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

        <EditText
            android:id="@+id/Fname"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="99dp"
            android:layout_marginTop="40dp"
            android:layout_marginEnd="99dp"
            android:autofillHints="name"
            android:ems="10"
            android:hint="@string/first_name"
            android:inputType="textPersonName"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

        <EditText
            android:id="@+id/Mname"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="99dp"
            android:layout_marginTop="24dp"
            android:layout_marginEnd="99dp"
            android:autofillHints="name"
            android:ems="10"
            android:hint="@string/middle_name"
            android:inputType="textPersonName"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/Fname" />

        <EditText
            android:id="@+id/Lname"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="99dp"
            android:layout_marginTop="24dp"
            android:layout_marginEnd="99dp"
            android:autofillHints="name"
            android:ems="10"
            android:hint="@string/last_name"
            android:inputType="textPersonName"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/Mname" />

        <EditText
            android:id="@+id/Rolln"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="99dp"
            android:layout_marginTop="24dp"
            android:layout_marginEnd="99dp"
            android:ems="10"
            android:hint="@string/roll_number"
            android:importantForAutofill="no"
            android:inputType="text"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/Lname" />

        <EditText
            android:id="@+id/Dept"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="99dp"
            android:layout_marginTop="24dp"
            android:layout_marginEnd="99dp"
            android:ems="10"
            android:hint="@string/department"
            android:importantForAutofill="no"
            android:inputType="text"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/Rolln" />

        <EditText
            android:id="@+id/Prog"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="99dp"
            android:layout_marginTop="24dp"
            android:layout_marginEnd="99dp"
            android:ems="10"
            android:hint="@string/programme"
            android:importantForAutofill="no"
            android:inputType="text"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/Dept" />

        <EditText
            android:id="@+id/Semester"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="99dp"
            android:layout_marginTop="24dp"
            android:layout_marginEnd="99dp"
            android:ems="10"
            android:hint="@string/semester"
            android:importantForAutofill="no"
            android:inputType="number"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/Prog" />

        <EditText
            android:id="@+id/Email"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="99dp"
            android:layout_marginTop="24dp"
            android:layout_marginEnd="99dp"
            android:autofillHints="emailAddress"
            android:ems="10"
            android:hint="@string/email"
            android:inputType="textEmailAddress"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/Semester" />

        <EditText
            android:id="@+id/Password"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="99dp"
            android:layout_marginTop="24dp"
            android:layout_marginEnd="99dp"
            android:autofillHints="password"
            android:ems="10"
            android:hint="@string/password"
            android:inputType="textPassword"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/Email" />

        <EditText
            android:id="@+id/PasswordConfirm"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="97dp"
            android:layout_marginTop="24dp"
            android:layout_marginEnd="97dp"
            android:autofillHints="password"
            android:ems="10"
            android:hint="@string/re_enter_password"
            android:inputType="textPassword"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/Password" />

        <Button
            android:id="@+id/SubmitButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="159dp"
            android:layout_marginTop="22dp"
            android:layout_marginEnd="160dp"
            android:text="@string/submit"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/PasswordConfirm" />

    </androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>

1 个答案:

答案 0 :(得分:0)

如果我没有误会,您的目标是显示一个带有进度条作为主要组件的对话框。如果是这样,您可以尝试使用ProgressDialogthis link提供了一个很好的示例。如果您希望对话框具有自定义样式,则可以从示例中的代码中删除setTitlesetMessage,如果还不够,则可以尝试设置custom style对话框。

希望有帮助!