Android Callback Kullanımı

Bugün Android üzerinde Java ile birlikte “Callback” ile yapısına bakacağız. Bununla birlikte birer tane “Runnable” ve “Handler” yapılarını örnek içerisinde kullanacağız. Bunlardan önce “Callback” kavramı nedir sorusunu yanıtlayalım. Kısaca, bir metodu çağırdıktan sonra bir süre sonra çağırdığımız yere tekrar dönmesidir. Örnek ile birlikte daha kolay anlayacağımızı düşünüyorum.
Öncelikle “Utils.java” adında yeni bir sınıf oluşturuyoruz. Ardından bir tane “interface” yazmamız gerekiyor. Bu “interface” içerisinde geri dönüşler için “override” edilecek metotları tanımlıyoruz. Sonra bir tane “static” olarak “countdown” adında metot yazıyoruz. Bu metot parametre olarak “Callback interface” ve bir tane tamsayı değeri alsın. Kısaca “static” metot demek o sınıfa ait nesne oluşturmadan metodu çağırabilmemiz anlamına gelmektedir. Ardından metot içerisinde “Handler” ve “Runnable” kullanarak bir tane geri sayım işlemi yapan yapı oluşturuyoruz. Oluşturduğumuz bu yapı aşağıdaki gibi oluyor. Zaman bittiği zaman ise öncelikle “Callback” içerisinde ki metodu çağırıyoruz ve ardından “countdown” işlemini tekrarlamak için “postDelayed” metodunu çağırıyoruz.

Şimdi “MainActivity.java” içerisinden çağırma kısmına geçelim.
Bahsettiğimiz gibi “static” olarak tanımladığımız için bir nesneye ihtiyacımız yok. Bunun için “Utils.coundown()” şeklinde içerisine parametreler vererek çağırabiliriz. Parametre olarak ise ilk önce “Callback” sınıfının bir nesneni, daha sonra kaçtan geriye sayacağını söylüyoruz. Burada dikkat etmemiz gereken bir şey daha var, zaman için milisaniye cinsiden değer almakta yani 1000 ile saniye çarpımı şeklinde yolluyoruz.

Log ekranının ekran görüntüsünü verelim.

Görüldüğü gibi her 5 saniye de bir kere “onEndTime” metodu içerisine giriyor.
Teşekkürler, görüşmek üzere.

Bir Cevap Yazın

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