OverView:
In this tutorial i will show that how to create a alert dialog with multiple choice(Single Button,Two Button,Three Button).Dialog:
A dialog is a small window that prompts the user to
make a decision or enter additional information. A dialog does not fill the screen and is
normally used for modal events that require users to take an action before they can proceed.Dialogs prompt the user for decisions or additional information required by the application to continue a
task. Such requests can range from simple Cancel/OK decisions to more complex layouts asking the
user to adjust settings or enter text.
Lets takes a simple example to show dialog concept:
- Create a new project File -> New -> Android Application Project.Now go to “res/layout" and paste the following code under main.xml file.
- You can give any name to your xml file,In my case it is main.xml.
- This is a single xml file that will give you all view for alert dialog in this app.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<Button
android:id="@+id/btn_alert1"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:layout_marginLeft="25dp"
android:layout_marginTop="40dip"
android:padding="20dip"
android:textSize="17sp"
android:text="Show Alert With Single Button "
android:textColor="#00008B" >
</Button>
<Button
android:id="@+id/btn_alert2"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:layout_marginLeft="25dp"
android:padding="20dip"
android:textSize="17sp"
android:text="Show Alert With Two Buttons"
android:textColor="#00008B" >
</Button>
<Button
android:id="@+id/btn_alert3"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:layout_marginLeft="25dp"
android:padding="20dip"
android:textSize="17sp"
android:text="Show Alert With Three Buttons"
android:textColor="#00008B" >
</Button>
</LinearLayout>
This will be your main Application Screen:
Now the Java code for your App(Alert dialog with single button):
This code will create a simple alert dialog with one button. Mainly here is three important methods one is setTitle() method used for set Title to alert dialog. setMessage() is used for setting message to alert dialog. setIcon() is to set icon to alert dialog.This code only show a single button name OK.
AlertDialog alertDialog = new AlertDialog.Builder(
AlertDialogActivity.this).create();
// Here i am setting Dialog Title
alertDialog.setTitle("Alert Dialog");
// now setting Dialog Message
alertDialog.setMessage("Welcome to AndroidTutorialRkt");
// here setting Icon to Dialog
alertDialog.setIcon(R.drawable.tick);
// here setting OK Button
alertDialog.setButton("OK",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on OK", Toast.LENGTH_LONG)
.show();
}
});
// Showing Alert Message
alertDialog.show();
Output for above Code:
Alert dialog with two button:
Below code create two button's in alert dialog,one is YES button and other is NO button.
AlertDialog.Builder alertDialog = new AlertDialog.Builder(
AlertDialogActivity.this);
// Setting Dialog Title
alertDialog.setTitle("Confirm Delete.....");
// Setting Dialog Message
alertDialog.setMessage("Are you sure you want delete this?");
// Setting Icon to Dialog
alertDialog.setIcon(R.drawable.delete);
// For "Yes" Button
alertDialog.setPositiveButton("YES",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on YES",
Toast.LENGTH_LONG).show();
}
});
// Setting Negative "NO" Button
alertDialog.setNegativeButton("NO",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on NO", Toast.LENGTH_LONG)
.show();
dialog.cancel();
}
});
// To show the alert msg
alertDialog.show();
Output for above Code:
Alert dialog with three button:
Below code create three button's in alert dialog,1st is YES button 2nd is NO button and 3rd is CANCEL button.
AlertDialog.Builder alertDialog = new AlertDialog.Builder(
AlertDialogActivity.this);
// Set Dialog Title here
alertDialog.setTitle("Save File.....");
// Set Dialog Message here
alertDialog.setMessage("Do you want to save this file?");
// Set Icon to Dialog here
alertDialog.setIcon(R.drawable.save);
// Setting Positive Yes Button
alertDialog.setPositiveButton("YES",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on YES",
Toast.LENGTH_LONG).show();
}
});
// Setting Positive Yes Button
alertDialog.setNeutralButton("NO",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on NO", Toast.LENGTH_LONG)
.show();
}
});
// Setting Positive "Cancel" Button
alertDialog.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on Cancel",
Toast.LENGTH_LONG).show();
}
});
// Showing Alert Message
alertDialog.show();
Output for above Code:
Now the complete code for this app:
Open your main Java activity class and copy/paste below given code in it,You can assign any name to your Java class as you wants but here i am taking it AlertDialogActivity.java.
package com.rkt.alertdialog;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class AlertDialogActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button btnAlertSingle = (Button) findViewById(R.id.btn_alert1);
Button btnAlert_2Btns = (Button) findViewById(R.id.btn_alert2);
Button btnAlert_3Btns = (Button) findViewById(R.id.btn_alert3);
btnAlertSingle.setOnClickListener(new View.OnClickListener() {
@SuppressWarnings("deprecation")
public void onClick(View arg0) {
// First step to create alert Dialog with one Button
AlertDialog alertDialog = new AlertDialog.Builder(
AlertDialogActivity.this).create();
// Here i am setting Dialog Title
alertDialog.setTitle("Alert Dialog");
// now setting Dialog Message
alertDialog.setMessage("Welcome to AndroidTutorialRkt");
// here setting Icon to Dialog
alertDialog.setIcon(R.drawable.tick);
// here setting OK Button
alertDialog.setButton("OK",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on OK",
Toast.LENGTH_LONG).show();
}
});
// Showing Alert Message
alertDialog.show();
}
});
btnAlert_2Btns.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
// Now for alert Dialog with two Buttons
AlertDialog.Builder alertDialog = new AlertDialog.Builder(
AlertDialogActivity.this);
// Setting Dialog Title
alertDialog.setTitle("Confirm Delete.....");
// Setting Dialog Message
alertDialog.setMessage("Are you sure you want delete this?");
// Setting Icon to Dialog
alertDialog.setIcon(R.drawable.delete);
// For "Yes" Button
alertDialog.setPositiveButton("YES",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on YES",
Toast.LENGTH_LONG).show();
}
});
// Setting Negative "NO" Button
alertDialog.setNegativeButton("NO",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on NO",
Toast.LENGTH_LONG).show();
dialog.cancel();
}
});
// To show the alert msg
alertDialog.show();
}
});
btnAlert_3Btns.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
// Creating alert Dialog with three Buttons
AlertDialog.Builder alertDialog = new AlertDialog.Builder(
AlertDialogActivity.this);
// Set Dialog Title here
alertDialog.setTitle("Save File.....");
// Set Dialog Message here
alertDialog.setMessage("Do you want to save this file?");
// Set Icon to Dialog here
alertDialog.setIcon(R.drawable.save);
// Setting Positive Yes Button
alertDialog.setPositiveButton("YES",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on YES",
Toast.LENGTH_LONG).show();
}
});
// Setting Positive Yes Button
alertDialog.setNeutralButton("NO",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on NO",
Toast.LENGTH_LONG).show();
}
});
// Setting Positive "Cancel" Button
alertDialog.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
// Toast to display msg on button click
Toast.makeText(getApplicationContext(),
"You have clicked on Cancel",
Toast.LENGTH_LONG).show();
}
});
// Showing Alert Message
alertDialog.show();
}
});
}
}
Great!! thanks so much.
ReplyDeletewelcome ankita...
DeleteNice code..!!! Thanks so much
ReplyDeleteAlways welcome shivkumar ji.......
Deletebest devops training in chennai
ReplyDeletebest hadoop training in chennai
best hadoop training in omr
hadoop training in sholinganallur
best java training in chennai
best python training in chennai
selenium training in chennai