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);
}
}
Github : https://github.com/LearncodeWithRk/Custom-Popup-Dialog
0 Comments