Android Kotlin Custom Alert Dialog
Merhaba Arkadaşlar,
Bu dersimizde kotlin ile Android için bir custom Alert Dialog yazacağız.
Şimdi Alert Dialog ekranda bir kutucuk içinde işlemler yaptığınız bir component ‘tir.
Şimdi Örnek uygulama ‘da Hem kendi custom EditText’imiz ve başlığımız olacak, hem kendi buttonları olacak. Hem ‘de custom olarak buttonlar olacak.
Siz istediğinizi projenize ekleyebilirsiniz.
Önce Layout : dialog_add_category
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="//schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="10dp">
<TextView
android:id="@+id/tv_dialog_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textStyle="bold"
android:text="Lütfen Kategori Giriniz.."
android:textSize="16sp"
android:gravity="center"/>
<EditText
android:id="@+id/et_dialog_add"
android:hint="Kategori Giriniz.."
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center"
>
<Button
android:id="@+id/btn_dialog_cancel"
android:text="İptal Et"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<Button
android:id="@+id/btn_dialog_save"
android:text="Kaydet"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</LinearLayout>
</LinearLayout>
Bu Layout ‘u AlertDialog view’inda gösterebilmemiz için bir LayoutInflater’a ihtiyacımız bulunuyor.
val mDialogView = LayoutInflater.from(this).inflate(R.layout.dialog_add_category, null)
sonrasında ise dialog’umuzu gösterelim.
val mBuilder = AlertDialog.Builder(this).setView(mDialogView).setTitle("Kategori Ekle").setPositiveButton("Kaydet"){
dialogInterface, i ->
mDialogView.et_dialog_add ile edittext'i kullanabilirsiniz.
}.setNegativeButton("ÇIK"){
dialogInterface, i ->
}.show()
Bu yukarıdaki AlertDialog’un Kendi buttonlarının kullanımıydı. Eğerki Custom Buttonları kullanmak istiyorsanız.
val mDialogView = LayoutInflater.from(this).inflate(R.layout.dialog_add_category, null)
val mBuilder = AlertDialog.Builder(this).setView(mDialogView).setTitle("Kategori Ekle").show()
mBuilder.btn_dialog_save.setOnClickListener {
--> İşlemler
en sonda mBuilder.dismiss() ile dialog'u kapatmayı unutmayın.
}
mBuilder.dialogCancelBtn.setOnClickListener {
mBuilder.dismiss()
}
Dersimiz bu kadar..
Umarım faydalı olmuştur.
Beni Aşağıdaki Sosyal Medya Hesaplarım üzerinden takip edebilirsiniz..