Android Toast Kullanımı

Android uygulama geliştirme, esnasında sıklıkla ekranda mesaj gösterme ihtiyacı hissedilmektedir. Bu amaçla da kullanılan kod kalıbı aşağıdaki şekildedir.

Java Listener Ve View Kavramları, Ekrana Müdahale,R Kaynak Dosyaları?

Bu yazıda resourcelerden, resource filelerden bahsedeceğim. Java kodu ile ekrandaki bileşenlere nasıl erişeceğimizden bahsedeceğim.

Android’in altında yatan bazı dosya yapılarından bahsetmeye çalışacağım.

İlk olarak string.xml;

 Bu ilk olarak uygulamamızı çalıştırdığımızda üstte gözüken MyApplication yazısıdır. Kendi uygulamanızın ismini değiştirmek isterseniz buradan değiştireblirsiniz.

Resource dosyaları aslında metin anlamında kaynakları tuttuğumuz yer. Yani bu birden fazla dil olabilir veya herhangi bir başka metin yazıyor olabilirsiniz. Buraya hardcoded olarak kodun içine stringler olarak yazmak mümkün olmakla birlikte yapılmaması gereken şeylerden birisi. Çünkü, bunlar sonuçta arayüzle gösterilecek olan mesajlar , mesela bir mesajı değiştirip her yerde değişmesini istiyor olabilrsiniz, dolayısıyla tek bir kaynaktan kontrol ediliyor olması bizim için önemli  o yüzden resource dosyaları oluşturuluyor Android de bize bu imkanı veriyor. Buraya kendi metinlerimizi ekleyebiliriz. Bir örnek kodla açıklamaya çalışacağım,

Matematik sorusu adlı bir string ekliyoruz. Bu bizim program içinde kullanacağımız değişken ismi. Yani biz bu kaynağa bu ismi kullanarak erişeceğiz.Yanında bir etiket oluyor buna da soru diyelim. 

Bu mesajı biz arayüzümüze nasıl ekleyeceğiz? Activity main kısmına gelelim. Designden button ve iki tane textView ekleyelim ekrana.  textView de text kısmında adını kendimiz yazmak yerine resource olarak yazıyoruz. Yani oluşturduğumuz olan resource dosyasından arayüzle bir bağlantı kuruyoruz ve resurce dosyasından o kaynakdan okunup arayüzde göstelecek.



İkinci textView deki testi boş bırakalım biz butona  tıkladığımızda cevap gelsin.

Eklenen bütün kaynaklar bir id ile kaydediliyor. Ve bunları bizim için Android Studio hazırlıyor.

 Şimdi MainActivity ‘e gelelim . Burada grafik arayüzünü kodlayacağız. Yani kodlardan grafik arayüzüne erişmeye çalışacağız.  Grafik  arayüzündeki bileşenlere erişebilmek için idsini kullanarak erişmeye çalışıyoruz. Bunun için,

 findViewById(R.id.erişmek istediğimiz bileşenin ismi çıkıyor zaten).

Şimdi biz sorunun değil cevabın metniyle oynayacağız dolayısıla cevabın idsini yazıyoruz. Butona tıklandğını algılamak için kod yazacağız. Bunlara erişebilmek için değişken içine atıyoruz. Hemen bizi uyarıyor tabiki o yüzden değişkenleri import etmemiz gerekiyor. Ama hala problem oluyor üstüne gelince söylüyor zaten. Yani tip dönüşümü yapmamız gerekiyor.

İkinci textView deki testi boş bırakalım biz butona  tıkladığımızda cevap gelsin.

Eklenen bütün kaynaklar bir id ile kaydediliyor. Ve bunları bizim için Android Studio hazırlıyor.

Şimdi listener kavramını açıklayayım. Listener, aktif bir bileşenimiz varsa bununla ilgili listener classı olmalı. Bir bileşenimiz var, bu butona tıklanıyor ve class hangisini dinliyor ? Bunun için bir interface’i implemente etmemiz gerekiyor. İmplement demenin sonucunda OnClick diye bir metot olması lazım .

Buttonun altına b.setonClickListener(this); diye bir şey ekleyeceğiz. Bunun anlamı b.tıklantığında bu class dinlensin.

Şimdi yapmak istediğimiz şey bu textViewin metnini değiştirmek. TextViewi yukarıda tanımlayacağız bunun için ,değişkene her yerden erişebilmek için . Yani butona tıklanınca resource dosyasında kayıtlı olan metni al bu textView in metni olarak ata.

Butona tıkladığımızda, aşağıdaki gibi sorunun cevabını bize verecek.

Yorum bırakın