0

i want to put an image in top of a dialog with half out of the dialog and half inside the dialog as shown in this image this image

i try to do it using constraint layout but it shows like these enter image description here

can any one help me to know how to make the image look like it out side the dialog as shown in the first image??

here is my code

<?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>
Sideeg MoHammed
  • 375
  • 2
  • 10

2 Answers2

1

Since you are using your own layout for dialog, you can make these changes below for getting full result.

<?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>

What i did is removed imageView from it's parent and wrapped in into new parent making sibling of CardView.

I have changed backgrounds and colors, you undo those as required.

Rajasekhar
  • 1,297
  • 2
  • 10
  • 19
  • thanks for your help i edit many things in your code but doesn't give me what i want but you give some push froward so i will up-vote your answer and you can see what is the full as i posted up there – Sideeg MoHammed Sep 17 '20 at 09:55
  • Show me changes so far you have made respect to my answer which i have posted, then it would be easy for follow-up. – Rajasekhar Sep 17 '20 at 10:00
  • i added android:background="@color/transparent" to parent layout and added android:background="@color/transparent" to image and i make the constraint layout visible and all the layout in fall apart so now i have ti fix it before deliver it to the customer – Sideeg MoHammed Sep 17 '20 at 10:09
0

i found what i was looking forward here

i changed my code as rajasekhar suggested to me

my code went like these

<?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>

but these is not been what i want but as mhp said here i added one line to my java code

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

and now it;s worked as i wanted

Sideeg MoHammed
  • 375
  • 2
  • 10