Ders 13: Android Strings.xml Kullanımı

29 Ocak 2012 Pazar
Şimdiye kadar yaptığımız bütün projelerde, main.xml içerisindeki belirtimlerde, android:text değerini elimizle şipşak yazıverdik.

Android:text=”3k” gibi. Ancak genel kullanım böyle değil. Farz edin ki birçok yerde 3k yazıyor ve bir değişiklik yapıp 3k değerlerini değiştirmeniz, başka bir String yapmanız gerekiyor. Oturup, tek tek 3k yazan yerleri değiştirebilirsiniz. Ama düşünün o kadar çok varki… İşte bunun için, Android bize bir kısayol sunuyor, kolaylık sağlıyor: Strings.xml!

Bu dosya res>values> içerisinde bulunuyor. Şimdi bakalım nasıl kullanıyoruz?
·        
İçini ilk açtığımızda bu şekilde gözüküyor:



<?xml version="1.0" encoding="utf-8"?>
<resources>
   
<string name="hello">Hello World,StringsOrnegiActivity!</string>
    <string name="app_name">StringsOrnegi</string>
</resources>

Buradan da anlaşabileceği üzere, <string name=””></string> yapısını kullanıyoruz. Burada name kısmına verdiğimiz değeri değişkenimiz gibi düşünebilirsiniz.<string></string> tagı arasında yazan ise o değişkene karşılık gelen ifade. Yani biz bir başka dosyada ( genelde tasarımı yaptığımız xml dosyasında) bu değişken adını kullandığımızda aslında ona karşılık gelen ifadeyi belirtmiş gibi oluyoruz. Burası biraz karışık gelmiş olabilir, onun için hemen bir örnekle gösterelim:

·         Strings.xml içerisine gelelim ve şu kodu yazalım:


<String name="buton">Ben bir butonum</String>

·         Main.xml içerisine gelelim ve şu kodu yazalım:


<Button
      android:id="@+id/button"
      android:text="@string/buton"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_gravity="center" />

Burada her zamanki gibi id, boyut ve yer ataması yaptık. Ama bunlardan farklı olarak text değerini eskiden yaptığımız gibi belirlemedik.

Android:text=”@string/buton” ifadesinde demek istiyoruz ki; name’i buton olan stringi bul ve text değerine onu ata.Yani aslında text değerini “Ben bir butonum” olarak ata.

Görüntüye bakacak olursak da şöyle görüyoruz:
·         Strings.xml i sadece string değişkenleri için kullanmıyoruz. Renk verme işlemini de bunun aracılığı ile gerçekleştirebiliyoruz:

Strings.xml içerisine şu kodu yazıyoruz:


<color name="arkaplan">#4DBDF0</color>

Main.xml içine gelip LinearLayout özelliğimize color’ı ekliyoruz.Böylece arkaplanımız da istediğimiz renk olacak.


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="@color/arkaplan">


Burada @string yerine @color yazdığımıza dikkat edin. Uygulamayı çalıştırdığımızda ise şöyle bir görüntü elde ediyoruz:

0 yorum:

Yorum Gönder