Android 如何将图像移出对话框

Android 如何将图像移出对话框,android,xml,android-studio,android-layout,android-constraintlayout,Android,Xml,Android Studio,Android Layout,Android Constraintlayout,我想在对话框顶部放置一个图像,其中一半在对话框外,一半在对话框内,如图所示 我试着用约束布局来做,但它显示如下 有谁能帮助我知道如何使图像看起来像第一张图像中显示的对话框外的图像吗 这是我的密码 <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://sch

我想在对话框顶部放置一个图像,其中一半在对话框外,一半在对话框内,如图所示

我试着用约束布局来做,但它显示如下

有谁能帮助我知道如何使图像看起来像第一张图像中显示的对话框外的图像吗

这是我的密码

<?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:layout_width="match_parent"
android:layout_height="450dp">

<ImageView
    android:id="@+id/imageView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="328dp"
    android:src="@drawable/ic_done"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.498"
    app:layout_constraintStart_toStartOf="parent" />

<TextView
    android:id="@+id/textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginEnd="35dp"
    android:layout_marginStart="20dp"
    android:layout_marginTop="36dp"
    android:text="لحجز الخدمة قم بادخال رقم المريض"
    android:textSize="30dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.496"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/imageView" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="72dp"
    android:layout_marginEnd="24dp"
    android:text="رقم المريض : "
    android:textSize="30dp"
    app:layout_constraintBottom_toTopOf="@+id/cancel_text"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="1.0"
    app:layout_constraintStart_toEndOf="@+id/editText_pation_number"
    app:layout_constraintTop_toBottomOf="@+id/textView" />

<EditText
    android:id="@+id/editText_pation_number"
    android:layout_width="80dp"
    android:layout_height="wrap_content"
    android:inputType="number"
    android:layout_marginTop="72dp"
    android:layout_marginEnd="204dp"
    app:layout_constraintBottom_toTopOf="@+id/order_button"

    app:layout_constraintEnd_toEndOf="@+id/textView2"
    app:layout_constraintHorizontal_bias="0.99"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/textView"
    app:layout_constraintVertical_bias="0.0" />

<TextView
    android:id="@+id/cancel_text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="48dp"
    android:layout_marginEnd="96dp"
    android:text="الغاء"
    android:textSize="35dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/textView2"
    app:layout_constraintVertical_bias="0.264" />

<Button
    android:id="@+id/order_button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="124dp"
    android:layout_marginEnd="160dp"
    android:layout_marginBottom="0dp"
    android:background="@drawable/my_button"
    android:shadowColor="@color/colorPrimaryDark"
    android:text="حجز"
    android:textColorHighlight="@color/white"
    android:textSize="20dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="@+id/cancel_text"
    app:layout_constraintHorizontal_bias="0.844"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/editText_pation_number"
    app:layout_constraintVertical_bias="0.723" />
  </androidx.constraintlayout.widget.ConstraintLayout>

由于您正在使用自己的对话框布局,您可以在下面进行更改以获得完整的结果

<?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:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:layout_marginStart="28dp"
    android:layout_marginEnd="28dp">

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="140dp"
        android:layout_height="140dp"
        android:src="@android:drawable/btn_star"
        android:translationZ="50dp"
        app:layout_constraintBottom_toTopOf="@id/box_view"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="@id/box_view" />

    <androidx.cardview.widget.CardView
        android:id="@+id/box_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="100dp"
        app:cardCornerRadius="8dp"
        app:cardElevation="8dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <androidx.constraintlayout.widget.ConstraintLayout
            android:id="@+id/customer_found_layout_parent"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_marginTop="80dp"
            android:visibility="invisible"
            tools:visibility="visible">

            <TextView
                android:id="@+id/textView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginStart="20dp"
                android:layout_marginTop="36dp"
                android:layout_marginEnd="35dp"
                android:text="لحجز الخدمة قم بادخال رقم المريض"
                android:textSize="30dp"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintHorizontal_bias="0.496"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent" />

            <TextView
                android:id="@+id/textView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="72dp"
                android:layout_marginEnd="24dp"
                android:text="رقم المريض : "
                android:textSize="30dp"
                app:layout_constraintBottom_toTopOf="@+id/cancel_text"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintHorizontal_bias="1.0"
                app:layout_constraintStart_toEndOf="@+id/editText_pation_number"
                app:layout_constraintTop_toBottomOf="@+id/textView" />

            <EditText
                android:id="@+id/editText_pation_number"
                android:layout_width="80dp"
                android:layout_height="wrap_content"
                android:layout_marginTop="72dp"
                android:layout_marginEnd="204dp"
                android:inputType="number"
                app:layout_constraintBottom_toTopOf="@+id/order_button"
                app:layout_constraintEnd_toEndOf="@+id/textView2"
                app:layout_constraintHorizontal_bias="0.99"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toBottomOf="@+id/textView"
                app:layout_constraintVertical_bias="0.0" />

            <TextView
                android:id="@+id/cancel_text"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="48dp"
                android:layout_marginEnd="96dp"
                android:text="الغاء"
                android:textSize="35dp"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintTop_toBottomOf="@+id/textView2"
                app:layout_constraintVertical_bias="0.264" />

            <Button
                android:id="@+id/order_button"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginStart="124dp"
                android:layout_marginEnd="160dp"
                android:layout_marginBottom="0dp"
                android:background="@color/colorPrimary"
                android:shadowColor="@color/colorPrimaryDark"
                android:text="حجز"
                android:textColorHighlight="#000000"
                android:textSize="20dp"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="@+id/cancel_text"
                app:layout_constraintHorizontal_bias="0.844"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toBottomOf="@+id/editText_pation_number"
                app:layout_constraintVertical_bias="0.723" />

        </androidx.constraintlayout.widget.ConstraintLayout>

    </androidx.cardview.widget.CardView>

</androidx.constraintlayout.widget.ConstraintLayout>

我所做的是将imageView从它的父级中删除,并封装到新的父级中,使之成为CardView的同级


我已经更改了背景和颜色,您可以根据需要撤消它们。

我找到了我所期待的

我按照建议更改了代码

我的代码是这样的

<?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:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/transparent"
android:layout_marginStart="28dp"
android:layout_marginEnd="28dp">

<ImageView
    android:id="@+id/imageView"
    android:layout_width="140dp"
    android:layout_height="140dp"
    android:src="@drawable/ic_done"
    android:translationZ="50dp"
    android:background="@color/transparent"
    app:layout_constraintBottom_toTopOf="@id/box_view"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="@id/box_view" />

 <androidx.cardview.widget.CardView
    android:id="@+id/box_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="100dp"
    app:cardCornerRadius="8dp"
    app:cardElevation="8dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:id="@+id/customer_found_layout_parent"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginTop="80dp"

        tools:visibility="visible">

        <TextView
            android:id="@+id/textView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="20dp"
            android:layout_marginTop="36dp"
            android:layout_marginEnd="35dp"
            android:text="لحجز الخدمة قم بادخال رقم المريض"
            android:textSize="30dp"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.496"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="72dp"
            android:layout_marginEnd="24dp"
            android:text="رقم المريض : "
            android:textSize="30dp"
            app:layout_constraintBottom_toTopOf="@+id/cancel_text"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="1.0"
            app:layout_constraintStart_toEndOf="@+id/editText_pation_number"
            app:layout_constraintTop_toBottomOf="@+id/textView" />

        <EditText
            android:id="@+id/editText_pation_number"
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:layout_marginTop="72dp"
            android:layout_marginEnd="204dp"
            android:inputType="number"
            app:layout_constraintBottom_toTopOf="@+id/order_button"
            app:layout_constraintEnd_toEndOf="@+id/textView2"
            app:layout_constraintHorizontal_bias="0.99"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/textView"
            app:layout_constraintVertical_bias="0.0" />

        <TextView
            android:id="@+id/cancel_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="48dp"
            android:layout_marginEnd="96dp"
            android:text="الغاء"
            android:textSize="35dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/textView2"
            app:layout_constraintVertical_bias="0.264" />

        <Button
            android:id="@+id/order_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="124dp"
            android:layout_marginEnd="160dp"
            android:layout_marginBottom="0dp"
            android:background="@color/colorPrimary"
            android:shadowColor="@color/colorPrimaryDark"
            android:text="حجز"
            android:textColorHighlight="#000000"
            android:textSize="20dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="@+id/cancel_text"
            app:layout_constraintHorizontal_bias="0.844"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/editText_pation_number"
            app:layout_constraintVertical_bias="0.723" />

    </androidx.constraintlayout.widget.ConstraintLayout>

</androidx.cardview.widget.CardView>

</androidx.constraintlayout.widget.ConstraintLayout>

现在它;s按我的要求工作

谢谢你的帮助我在你的代码中编辑了很多东西,但没有给我我想要的,但你向前推了推,所以我会投票给你的答案,你可以看到我发布的全部内容显示到目前为止你对我发布的答案所做的更改,然后就很容易跟进了。我在父布局中添加了android:background=“@color/transparent”,并在图像中添加了android:background=“@color/transparent”,我使约束布局可见,并且所有布局都会分解,所以现在我必须在交付给客户之前修复它
 dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));