Skip to content

DAlert Dialog

DV Infosys edited this page Nov 13, 2019 · 1 revision

Usage

Show material progress

DAlertDialog pDialog = new DAlertDialog(this, DAlertDialog.PROGRESS_TYPE);
pDialog.getProgressHelper().setBarColor(Color.parseColor("#A5DC86"));
pDialog.setTitleText("Loading");
pDialog.setCancelable(false);
pDialog.show();

You can customize progress bar dynamically with materialish-progress methods via DAlertDialog.getProgressHelper():

  • resetCount()
  • isSpinning()
  • spin()
  • stopSpinning()
  • getProgress()
  • setProgress(float progress)
  • setInstantProgress(float progress)
  • getCircleRadius()
  • setCircleRadius(int circleRadius)
  • getBarWidth()
  • setBarWidth(int barWidth)
  • getBarColor()
  • setBarColor(int barColor)
  • getRimWidth()
  • setRimWidth(int rimWidth)
  • getRimColor()
  • setRimColor(int rimColor)
  • getSpinSpeed()
  • setSpinSpeed(float spinSpeed)

A basic message:

new DAlertDialog(this)
    .setTitleText("Here's a message!")
    .show();

A title with a text under:

new DAlertDialog(this)
    .setTitleText("Here's a message!")
    .setContentText("It's pretty, isn't it?")
    .show();

A error message:

new DAlertDialog(this, DAlertDialog.ERROR_TYPE)
    .setTitleText("Oops...")
    .setContentText("Something went wrong!")
    .show();

A warning message:

new DAlertDialog(this, DAlertDialog.WARNING_TYPE)
    .setTitleText("Are you sure?")
    .setContentText("Won't be able to recover this file!")
    .setConfirmText("Yes,delete it!")
    .show();

A success message:

new DAlertDialog(this, DAlertDialog.SUCCESS_TYPE)
    .setTitleText("Good job!")
    .setContentText("You clicked the button!")
    .show();

A message with a custom icon:

new DAlertDialog(this, DAlertDialog.CUSTOM_IMAGE_TYPE)
    .setTitleText("Sweet!")
    .setContentText("Here's a custom image.")
    .setCustomImage(R.drawable.custom_img)
    .show();

Bind the listener to confirm button:

new DAlertDialog(this, DAlertDialog.WARNING_TYPE)
    .setTitleText("Are you sure?")
    .setContentText("Won't be able to recover this file!")
    .setConfirmText("Yes,delete it!")
    .setConfirmClickListener(new DAlertDialog.KAlertClickListener() {
        @Override
        public void onClick(DAlertDialog sDialog) {
            sDialog.dismissWithAnimation();
        }
    })
    .show();

Show the cancel button and bind listener to it:

new DAlertDialog(this, DAlertDialog.WARNING_TYPE)
    .setTitleText("Are you sure?")
    .setContentText("Won't be able to recover this file!")
    .setCancelText("No,cancel plx!")
    .setConfirmText("Yes,delete it!")
    .showCancelButton(true)
    .setCancelClickListener(new DAlertDialog.KAlertClickListener() {
        @Override
        public void onClick(DAlertDialog sDialog) {
            sDialog.cancel();
        }
    })
    .show();

Customizing the alert dialog

.confirmButtonColor(R.color.colorPrimary) // you can change the color of confirm button
.cancelButtonColor(R.color.colorAccent) // you can change the color of cancel button
.setContentTextSize(50) // you can change the content text size
.setTitleText("<h2>Title</h2><br><p>Description here</p>") //you can use html in title text

//This is how you can set dark theme to alert dialog box
@Override
protected void onCreate(Bundle savedInstanceState) {

    //sets the theme for app
    SharedPreferences sharedPreferences = this
            .getSharedPreferences("theme", Context.MODE_PRIVATE);
    final boolean dark = sharedPreferences.getBoolean("dark", false);
    setTheme(dark ? R.style.AppThemeDark : R.style.AppTheme);

    DARK_STYLE = dark; //this will apply dark theme to DAlertDialog Box

    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_ui);
}

And if you want to change the button corners with color create a drawable file

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="true">
            <shape android:shape="rectangle">
                <solid android:color="#FF5474" />
                <corners android:radius="6dp"/>
            </shape>
        </item>
        <item>
            <shape android:shape="rectangle">
                <solid android:color="#FF1744" />
                <corners android:radius="6dp"/>
            </shape>
        </item>
    </selector>

And then call this method when you create drawable

  .confirmButtonColor(R.drawable.button_background) // you can change border and color of button

And if you want to hide Title Text and Content Text of alert dialog

.setTitleText("Are you sure?") //just don't write this line if you want to hide title text
.setContentText("Won't be able to recover this file!") // don't write this line if you want to hide content text

Change the dialog style upon confirming:

new DAlertDialog(this, DAlertDialog.WARNING_TYPE)
    .setTitleText("Are you sure?")
    .setContentText("Won't be able to recover this file!")
    .setConfirmText("Yes,delete it!")
    .setConfirmClickListener(new DAlertDialog.KAlertClickListener() {
        @Override
        public void onClick(DAlertDialog sDialog) {
            sDialog
                .setTitleText("Deleted!")
                .setContentText("Your imaginary file has been deleted!")
                .setConfirmText("OK")
                .setConfirmClickListener(null)
                .changeAlertType(DAlertDialog.SUCCESS_TYPE);
        }
    })
    .show();
Clone this wiki locally