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

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

Merhaba. Bu derste, android uygulamalarımı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.

android buton

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. Bu arada Activity sınıfımızı en yukarıda View.OnClickListener sınıfından implement etmemiz gerekiyor.

android buton

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.

android buton

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.

Ekran Görüntüleri : 

android buton android buton

Bir sonraki derslerde görüşmek üzere.

Mehmet Kirazlı

İstanbul Eyüp'te ikamet ediyorum. Giresun Alucra'lıyım. Bilgisayar Mühendisliği bölümünden 2013 yılında mezun oldum. "Yeni Başlayanlar için Java 8" kitabının yazarıyım. Şu anda özel bir firmada Mobil Yazılım Geliştirme Uzmanı olarak çalışıyorum.

İlginizi Çekebilir

Android Dersleri 29 : Telefon Rehberi Uygulaması Yapıyoruz

Merhaba. Yine uzunca bir aradan sonra yazmaya devam ediyorum. Bu yazımda,  veritabanında değinmediğim Where ifadesine yer …

3 Yorumlar

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

  2. 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?

    • 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);

Bir cevap yazın

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