Genel

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.

Örnek Uygulama

Ş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..

Bu görsel boş bir alt niteliğe sahip; dosya adı unnamed.png Bu görsel boş bir alt niteliğe sahip; dosya adı github-mark-1024x538.png Bu görsel boş bir alt niteliğe sahip; dosya adı 26cba4a440f340e70e99ba87ca76d416.png

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir