Android Programlama

Android Alert Dialog

Merhabalar  bugün alert dialog kullanımını anlatacağım. Alert Dialog android’de en çok kullanılan dialog çeşidir. Daha önceden paylaştığım örneklerde başka bir dialog çeşidi olan toast mesajı’nı kullanmıştım. Alert Dialog toast mesajdan ayıran kullanıcı uyarı mesajını kapatana kadar ekranda kalmasıdır. Alert Dialog ile kullanıcıyı bilgilendirme , herhangi bir işlem için kullanıcıdan olumlu olumsuz onay alma gibi işlemler gerçekleştirilebilir.

Yeni bir proje oluşturup kullanacağımız layout’a bir buton ekliyoruz.Daha sonra alert butonu kullanmak istediğimiz class için kodlar aşağıdaki gibidir.

Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this);
alert.setTitle("Alert Dialog");
alert.setMessage("Hosgeldiniz");
alert.setIcon(R.drawable.ok);
alert.setNeutralButton("Tamam", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplicationContext(),"TAmam tıklandı", Toast.LENGTH_SHORT).show();
}
});
alert.show();
}
});

Kodlarda ilk olarak oluşturduğumuz butonun id’sini alıyoruz.Daha sonra buton click eventi oluşturup.Alertdialog nesnesini oluşturuyoruz. Alert dialog nesnesini set ederek başlık , mesaj ve ikon ekliyoruz.Daha sonra setNeutralButton metodunu kullandık.

alertdialogÖrneğimizi biraz daha geliştirerek ikinci butonu ekledim. İkinci butonu tıklanınca da evet ve hayır seçenekleri bulunan alertdialog gösterilecek kodların tamamı aşağıdaki gibidir.


Button button = (Button) findViewById(R.id.button);
Button button2 = (Button) findViewById(R.id.button2);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this);
alert.setTitle("Alert Dialog");
alert.setMessage("Hosgeldiniz");
alert.setIcon(R.drawable.ok);
alert.setNeutralButton("Tamam", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplicationContext(),"TAmam tıklandı", Toast.LENGTH_SHORT).show();
}
});
alert.show();
}
});
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder alert2 = new AlertDialog.Builder(MainActivity.this);
alert2.setTitle("Alert Dialog");
alert2.setMessage("Çıkmak istediğinize eminmisiniz?");
alert2.setIcon(R.drawable.exit);
alert2.setPositiveButton("EVET",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int which) {
Toast.makeText(getApplicationContext(), "Evet tıklandı", Toast.LENGTH_SHORT).show();
}
});
alert2.setNegativeButton("HAYIR",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplicationContext(), "Hayır tıklandı", Toast.LENGTH_SHORT).show();
dialog.cancel();
}
});
alert2.show();
}
});

Butonların tıklanma olaylarının içindeki kodlara bakarsanız. Hemen hemen aynı kodların kullanıldığını göreceksiniz.İkinci butonun tek farkı setPositiveButton ve setNegativeButon metodlarını kullanmıs olmam ikinci alertdialogun görüntüsü aşağıdaki gibidir.
alertdialog2