Widget Recent Post No.

header ads

How to make Custom Popup Dialog | Android Studio available Github


 Step 1 : activity_main.xml

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout 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="match_parent"

    android:background="@color/black"

    tools:context=".MainActivity">



    <LinearLayout

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_centerInParent="true"

        android:orientation="vertical">

        <Button

            android:textColor="@color/black"

            android:id="@+id/btn_positive"

            style="@style/loginButtonForgotPassword"

            android:layout_centerInParent="true"

            android:layout_gravity="center_horizontal"

            android:text="LOGIN POP UP" />


        <Button

            android:textColor="@color/black"

            android:id="@+id/btn_negative"

            style="@style/loginButtonForgotPasswordReverse"

            android:layout_centerInParent="true"

            android:layout_gravity="center_horizontal"

            android:layout_marginTop="20dp"

            android:text="FAILED POP UP" />

    </LinearLayout>



</RelativeLayout>


 Step 2 : popup_dialog_negative.xml

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout 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_marginLeft="5dp"

    android:layout_marginRight="5dp"

    android:gravity="center">

    <ImageView

        android:id="@+id/iv_closePopupNegativeImg"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentRight="true"

        android:layout_marginTop="7dp"

        android:layout_marginRight="7dp"

        android:clickable="true"

        android:elevation="5dp"

        android:src="@drawable/ic_close" />

    <androidx.cardview.widget.CardView

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_alignParentStart="true"

        android:layout_alignParentLeft="true"

        android:layout_alignParentTop="true"

        app:cardBackgroundColor="@color/colorGreen"

        app:cardCornerRadius="15dp">

        <LinearLayout

            android:layout_width="match_parent"

            android:layout_height="wrap_content"

            android:orientation="vertical">

            <LinearLayout

                android:layout_width="match_parent"

                android:layout_height="wrap_content"

                android:layout_marginTop="25dp"

                android:layout_marginBottom="25dp"

                android:orientation="vertical">

                <TextView

                    android:layout_width="match_parent"

                    android:layout_height="wrap_content"

                    android:layout_marginLeft="20dp"

                    android:layout_marginRight="20dp"

                    android:text="LearnCode With RK"

                    android:textAlignment="center"

                    android:textColor="@color/colorWhite"

                    android:textSize="25dp"

                    android:textStyle="bold" />

                <ImageView

                    android:layout_width="wrap_content"

                    android:layout_height="wrap_content"

                    android:layout_gravity="center"

                    android:layout_marginLeft="20dp"

                    android:layout_marginRight="20dp"

                    android:layout_marginBottom="10dp"

                    android:src="@drawable/ic_error" />

                <TextView

                    android:id="@+id/tv_error_message"

                    android:layout_width="match_parent"

                    android:layout_height="wrap_content"

                    android:layout_marginLeft="20dp"

                    android:layout_marginRight="20dp"

                    android:layout_marginBottom="20dp"

                    android:text="You have failed to complete the chalange."

                    android:textAlignment="center"

                    android:textColor="@color/colorWhite"

                    android:textSize="18sp"

                    android:textStyle="bold" />

                <Button

                    android:id="@+id/btn_closePopupNegativeImg"

                    android:layout_width="200dp"

                    android:layout_height="wrap_content"

                    android:layout_gravity="center_horizontal"

                    android:layout_marginTop="20dp"

                    android:background="@drawable/button_red_round"

                    android:text="Close"

                    android:textColor="@color/black" />

            </LinearLayout>

        </LinearLayout>

    </androidx.cardview.widget.CardView>



</RelativeLayout>


 Step 3 : popup_dialog_positive.xml

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout 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_marginLeft="5dp"

    android:layout_marginRight="5dp"

    android:gravity="center">

    <ImageView

        android:id="@+id/iv_closePopupPositiveImg"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentRight="true"

        android:layout_marginTop="7dp"

        android:layout_marginRight="7dp"

        android:clickable="true"

        android:elevation="5dp"

        android:src="@drawable/ic_close" />

    <androidx.cardview.widget.CardView

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_alignParentStart="true"

        android:layout_alignParentLeft="true"

        android:layout_alignParentTop="true"

        app:cardBackgroundColor="@color/purple_700"

        app:cardCornerRadius="15dp">

        <LinearLayout

            android:layout_width="match_parent"

            android:layout_height="wrap_content"

            android:orientation="vertical">

            <LinearLayout

                android:layout_width="match_parent"

                android:layout_height="wrap_content"

                android:layout_marginTop="25dp"

                android:layout_marginBottom="25dp"

                android:orientation="vertical">

                <TextView

                    android:textColor="@color/white"

                    android:layout_width="match_parent"

                    android:layout_height="wrap_content"

                    android:layout_marginLeft="20dp"

                    android:layout_marginRight="20dp"

                    android:text="Successfully Registered..."

                    android:textAlignment="center"

                    android:textSize="25dp"

                    android:textStyle="bold" />

                <ImageView

                    android:layout_width="150dp"

                    android:layout_height="150dp"

                    android:layout_gravity="center"

                    android:layout_marginLeft="20dp"

                    android:layout_marginRight="20dp"

                    android:layout_marginBottom="10dp"

                    android:src="@drawable/ic_baseline_mark_email_read_24" />

                <TextView

                    android:textColor="@color/white"

                    android:id="@+id/tv_verify_message"

                    android:layout_width="match_parent"

                    android:layout_height="wrap_content"

                    android:layout_marginLeft="20dp"

                    android:layout_marginRight="20dp"

                    android:layout_marginBottom="20dp"

                    android:text="Verification email has been sent to you Email ID... Please verify your Email"

                    android:textAlignment="center"

                    android:textSize="18sp"

                    android:textStyle="bold" />

                <Button

                    android:id="@+id/btn_loginPopupPositiveImg"

                    android:layout_width="200dp"

                    android:layout_height="wrap_content"

                    android:layout_gravity="center_horizontal"

                    android:layout_marginTop="20dp"

                    android:background="@drawable/button_green_round"

                    android:text="Login"

                    android:textColor="@color/black" />

            </LinearLayout>

        </LinearLayout>

    </androidx.cardview.widget.CardView>

</RelativeLayout>



Step 4 MAIN.JAVA

package in.learncodewithrk.googlelogin;




import androidx.appcompat.app.AppCompatActivity;

import android.app.Dialog;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.ImageView;

import android.widget.TextView;



public class MainActivity extends AppCompatActivity  {


    Button btn_positive, btn_negative;




    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);



        btn_negative = findViewById(R.id.btn_negative);

        btn_positive = findViewById(R.id.btn_positive);

        btn_positive.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                showPositivePopupDialog();

            }

        });

        btn_negative.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                showNegativePopupDialog();

            }

        });

    }

    public void showPositivePopupDialog() {

        final Dialog popup_dialog;

        Button btn_continue;

        ImageView iv_close;

        popup_dialog = new Dialog(MainActivity.this);

        popup_dialog.show();

        popup_dialog.setContentView(R.layout.popup_dialog_positive);

        iv_close = (ImageView) popup_dialog.findViewById(R.id.iv_closePopupPositiveImg);

        btn_continue = (Button) popup_dialog.findViewById(R.id.btn_loginPopupPositiveImg);

        popup_dialog.getWindow().setBackgroundDrawableResource(

                android.R.color.transparent

        );

        iv_close.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                popup_dialog.dismiss();

            }

        });

        btn_continue.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                popup_dialog.dismiss();

            }

        });

        popup_dialog.setCanceledOnTouchOutside(false);

        popup_dialog.setCancelable(false);

    }

    public void showNegativePopupDialog() {

        final Dialog popup_dialog;

        Button btn_continue;

        ImageView iv_close;

        popup_dialog = new Dialog(MainActivity.this);

        popup_dialog.show();

        popup_dialog.setContentView(R.layout.popup_dialog_negative);

        iv_close = (ImageView) popup_dialog.findViewById(R.id.iv_closePopupNegativeImg);

        btn_continue = (Button) popup_dialog.findViewById(R.id.btn_closePopupNegativeImg);

        popup_dialog.getWindow().setBackgroundDrawableResource(

                android.R.color.transparent

        );

        iv_close.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                popup_dialog.dismiss();

            }

        });

        btn_continue.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                popup_dialog.dismiss();

            }

        });

        popup_dialog.setCanceledOnTouchOutside(false);

        popup_dialog.setCancelable(false);

    }

}


Source : https://user-images.githubusercontent.com/71060268/143732678-f2db5bea-767e-45cc-8572-908a1d1a65e4.png

Github : https://github.com/LearncodeWithRk/Custom-Popup-Dialog


Post a Comment

0 Comments