• Şuradasınız
  • Anasayfa
  • Android
  • Android Dersleri 28 : Butonları Tek Bir Listener ile Kontrol Etme

Android Dersleri 28 : Butonları Tek Bir Listener ile Kontrol Etme

Merhaba. Bu derste, uygulamamızdaki butonların hepsi için tek bir listener oluşturmayı anlatacağım.

Normalde her buton için bir listener oluşturur ve bu listener içerisine de butona tıklandığında, bırakıldığında vs. yapılacak işlemleri yazarız. Şimdi, bir sınıftaki tüm butonlar için ortak bir event oluşturmayı göstereceğim.

Uygulamamızı aşağıdaki gibi oluşturalım.

1

Bu ekranımızın kodlamasını yapacağımız sınıfımızı da açalım ve aşağıdaki gibi ilk olarak butonlara ait birer nesne oluşturalım ve aynı listener’a bağlayalım.

2

onCreate() metodunun içerisinde butonları oluşturduk. Ayrıca ortak bir listener’a bağladık.

Şimdi bu metodun altına, listener’ın içini ve gerekli case yapılarını yazacağız. Bunun için de aşağıdaki onClick() metodunu kullanacağız. Ben click olayını kontrol ediyorum. Siz bırakılma, basılı tutma gibi olayları da kontrol edebilirsiniz.

3

Burada, tıklandığında olacakları kontrol etmek istediğimiz için click olayına ait metodu oluşturduk ve içerisine switch-case yapılarını yazdık. Tıklanan butonun id’sini alır ve hangi case koşuluna uyuyorsa o satır çalışır. Biz de buton tıklandığında bir toast mesajının çıkmasını sağladık.

Uygulamanın çıktıları aşağıdaki gibidir.

4 5

Bir sonraki derslerde görüşmek üzere

Benzer Yazılar

Yorumlar

  • cagatay , 25 Şubat 2014 - 11:44

    Mehmet Hocam siteniz ve android anlatımı konusunda vermiş olduğunuz emekler için çok teşekkür ederim. Türkçe kaynak olarak en kapsamlı ve en iyi anlatım diyebilirim. Umarım Uzun bir ara vermiş olduğunuz android derslerinin devamı gelir. Sabırsızlıkla bekliyoruz.

    Cevapla
  • eren , 02 Aralık 2014 - 20:01

    selamlar hocam öncelikle teşekkür ederim. Fakat sormak istediğim bir soru var. Bu şekilde butonları toast değilde bir sayfaya yönlendirebiliyor muyuz?

    Cevapla
    • altan , 08 Haziran 2015 - 15:45

      Tabi ki yapabilirsin. Yapman gereken şey
      Toast.makeText( ….. ile başlayan yeri silip ne yapmak istiyorsan onun kodunu yazmak.
      Hocam sayfada kastın nedir?
      Web sayfası mı, başka bir activity mi?
      Yeni bir link için mesela: (ToastTı silip yerine aşağıdaki kodu yazmalısın)

      Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(“http://www.google.com”));
      startActivity(browserIntent);

      Cevapla

Yorum Yazın

Su elementleri kullanabilirsiniz : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Arama
RSS
Beni yukari isinla