PROGRAMLAMA

Kullanıcı Arayüzünü Xml Layout'una Çevirmek

Tamamlamış olduğumuz İlk programda layout oluşumunda PROGRAMMATIC yöntemi kullanmıştık. Bu yöntem kullanıcı arayüzü tasarımı direk olarak source kodun içerisinde yapılır. Bu pek önerilmez çünkü çok fazla hata kaynağı meydana getirmektedir.


Bunun yerine XML ile bir layout oluşturarak istediğimiz şekilde ayarlama imkanına kavuşuruz.Xml Layout dosyaları projemizin res/layout/ klasöründe bulunmaktadır. Burada Kulanılan res terimi, resources anlamına gelmektedir.


Yatay konuma getirildiğinde de yeni bir landspace oluşturulur. Hazırlanan yeni landspace layout Xml dosyası /res/layout-land dizinine yerleştirilir. Android işletim sistemi aygıtın yatay konuma getirilmesi ile otamatik olarak bu dizindeki Xml dosyasını yeni layout dosyası olarak uyarlayıp ekran görüntüsünü güncelleyecektir.


Şimdi ilk yazıdğımız programı farklı bir şekilde yazacağız. Hem Xml'de istedğimiz boyutları verebilem hemde alacağımız metini layout recourse'dan çekeceğiz.Böylelikle daha kolay ve daha programlamaya yakın bir uygulama geliştirmesi sağlayacağız. Aşağıdaki kodu /res/layout/ klasöründe bulunan main.xml dosyasını açarak değiştiriyoruz. Burada hem id hemde uygulamanın boyu ve enini istediğimiz gibi değiştirme özgürlüğüne sahibiz.



< ?xml version="1.0" encoding="utf-8"?>
< LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
< TextView
android:id="@+id/textview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="@string/hello"
/>
< /LinearLayout>



Şimdi de res/values kalsöründe bulunan strings.xml dosyasına tıklayarak aşağıdaki gibi değiştiriyoruz. Burada da var olan programımıza bir title ve metin olarak ne girmek istiyorsak onu girebiliyoruz.



< ?xml version="1.0" encoding="utf-8"?>
< resources>
< string name="hello">Hoşgeldiniz bu kısımda metin kısmı :) < /string>
< string name="app_name">Hoşgeldiniz Burası Başlık Kısmı< /string>
< /resources>



Şimdi src kalsöründeki ana class'ımıza gelerek alttaki kodu yerleştirelim. "setContentView(R.layout.main);" kodunu biraz anlatmak istiyorum. İşte burada girdiğimiz layouttaki main kısmını giriyoruz.Böylelikle burada bir sınıf belirtmeden istediğimiz yazıyı Xml'den çekmiş oluyoruz.Yuykarıda da belirttiğim gibi daha temiz bir programcılıkla aynı programı yazmış bulunmaktayız.



public class AccelerometerPlayActivity extends Activity {

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main); } }