Xamarin.Android – Popup/Dialog/AlertDialog kullanımı

25 Kas

Merhaba arkadaşlar,
Xamarin.Android ile Popup, Dialog, Alert dialog nasıl çıkartırız anlatmaya çalışacağım.
Yukarıda ki resimde gördüğünüz gibi bir dialog yapacağız.
Öncelikle blank olarak Xamarin.Android projesi açtım ve btnShow adında bir buton ekledim.
Xml kodları;

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

<Button
    android:id="@+id/btnShow"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Dialog/Popup Show"
    />

</RelativeLayout>

MainActivity.cs dosyama geçip, OnCreate methodunda, button bilgilerimi çektim ve click eventimi oluşturdum > Click eventi içerisinde ise AlertDialog kütüphanesini kullanarak dialogumu çıkarttım;

protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            Xamarin.Essentials.Platform.Init(this, savedInstanceState);
            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.activity_main);

            Button btnShow = FindViewById<Button>(Resource.Id.btnShow);
            btnShow.Click += BtnShow_Click;
        }

        private void BtnShow_Click(object sender, System.EventArgs e)
        {
            Android.Support.V7.App.AlertDialog.Builder alertDialog = new Android.Support.V7.App.AlertDialog.Builder(this);
            alertDialog.SetTitle("Dialog başlığı");
            alertDialog.SetMessage("Mesaj");

            alertDialog.SetPositiveButton("OK", delegate
            {
                alertDialog.Dispose();

                Toast.MakeText(this, "Ok butonuna basıldı.", ToastLength.Long).Show();

                //StartActivity(typeof(MainActivity));
            });

            alertDialog.SetNegativeButton("Cancel", delegate
            {
                alertDialog.Dispose();
            });

            alertDialog.Show();
        }

İşlemler bu kadardır. Çalıştırdığınızda, Ok butona bastığınızda Toast mesajınız gözükecektir. Yani Ok butonuna basıldığında yapılacakları toast mesajı verilen yerde yapabilirsiniz.

Cancel’a basıldığında bir işlem yapmak isterseniz de Cancel altında Dispose öncesi yapabilirsiniz.

Umarım yardımcı olmuşumdur. İyi çalışmalar…

Bir Cevap Yazın