我创建了一个对话框,如下所示:
final Dialog dialog = new Dialog( context );
dialog.setContentView( R.layout.item_give_review );
dialog.getWindow().setBackgroundDrawable( new ColorDrawable( Color.TRANSPARENT ) );
dialog.setCancelable( true );
dialog.setCanceledOnTouchOutside(true);
dialog.show();
哪里 item_give_review
是一个 NestedScrollView
包含的对象很少:
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="40dp"
android:background="@drawable/dialog_rounded"
android:scrollbarAlwaysDrawVerticalTrack="true"
android:scrollbarFadeDuration="0"
android:scrollbarSize="3dip"
android:scrollbarThumbVertical="@color/colorLightPurple"
android:scrollbars="vertical"
android:fillViewport="true">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageButton
android:id="@+id/ib_CloseDialog"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="0dp"
android:layout_marginEnd="0dp"
android:background="@android:color/transparent"
android:src="@drawable/ic_cancel"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_RankUp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="75dp"
android:fontFamily="@font/assistant_semibold"
android:text="@string/RankUp"
android:textColor="@color/colorLightPurple"
android:textSize="27sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/iv_RankUp"
android:layout_width="110dp"
android:layout_height="120dp"
android:layout_marginTop="48dp"
android:adjustViewBounds="false"
android:scaleType="fitXY"
android:src="@drawable/ic_img_rankup"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_RankUp" />
<TextView
android:id="@+id/tv_RankUp_Thanks1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="56dp"
android:layout_marginTop="50dp"
android:layout_marginEnd="56dp"
android:fontFamily="@font/assistant"
android:gravity="center"
android:text="@string/Activity_GiveRank"
android:textColor="@color/colorEmptyStar"
android:textSize="15sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/iv_RankUp" />
<RatingBar
android:id="@+id/reviewRatingUser"
style="?android:attr/ratingBarStyle"
android:layout_width="240dp"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:isIndicator="false"
android:numStars="5"
android:secondaryProgressTint="@color/fui_transparent"
android:stepSize="0.5"
android:theme="@style/rb_Stars"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_RankUp_Thanks1" />
<EditText
android:id="@+id/et_ReviewText"
android:layout_width="240dp"
android:layout_height="wrap_content"
android:layout_marginStart="40dp"
android:layout_marginTop="20dp"
android:layout_marginEnd="40dp"
android:background="@drawable/btn_underline_gray"
android:drawablePadding="10dp"
android:fontFamily="@font/assistant_semibold"
android:gravity="top|center"
android:hint="Leave your feedback here"
android:inputType="textMultiLine"
android:lines="8"
android:maxLines="3"
android:minLines="3"
android:scrollbars="vertical"
android:textColor="@color/colorBlackText"
android:textSize="18sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/reviewRatingUser" />
<Button
android:id="@+id/btn_Done"
android:layout_width="240dp"
android:layout_height="44dp"
android:layout_marginTop="40dp"
android:background="@drawable/btn_rounded_purple"
android:text="@string/ActivityChange_Done"
android:textAllCaps="false"
android:textColor="@color/colorWhite"
android:textSize="15sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/et_ReviewText" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.core.widget.NestedScrollView>
现在,当用户在对话框外单击时,我希望对话框关闭,但是我注意到它不能与margin一起工作。
为了让它工作,我不得不删除的边缘和设置的尺寸 nestedScrollView
.
有没有什么办法,我将能够使用保证金和解散时,点击外面?
暂无答案!
目前还没有任何答案,快来回答吧!