Android Programlama -2

Merhaba arkadaşlar bu gün ki makalem de linear ve ralative layoutlardan bahsedeceğim.

Bir önceki makalemde Android studio ya giriş yazım bulunmaktadır. Eğer okumadıysanız öncelikle onu okumanızı tavsiye ederim.

android-studio-giris

Layout ları bir evin sınırları gibi düşünebilirsiniz. Nasıl ki evin odaları evin sınırları dışında olamaz ise, uygulamamızın içinde kullanacağımız komponent ler de layout ların dışında tanımlanamaz.

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    tools:context=".MainActivity">






Linear layout, içine yazılan komponent leri alt alta veya yan yana sıralanmasını sağlar. Bu sıralamayı neye göre yapacağını linear layout un oriantation özelliğine verdiğimiz değere göre karar verir.
Eğer komponent lerin alt alta sıralamasını istiyorsak bu özelliği vertical olarak, yan yana sıralamasını istiyorsak horizontal olarak set ediyoruz.

 

 

Bütün komponent lerin ortak özelliklerimden olan
android:layout_height=”wrap_content ve android:layout_width=”wrap_content” özelliklerinden bahsedecek olursak, bu özellikler komponent in yüksekliğini ve genişliğini ayarladığımız özelliklerdir. Bu özellikleri wrap content ve match parent yapabildiğimiz gibi sayısal değerler de verebiliriz. Verdiğimiz değerlerin px cinsinden olması gerekmektedir. March parent ile komponent in bütün ekranı kaplamasını sağlarız. Wrap content ile ise  komponent in minumum kapladığı alan kadar yer kaplamasını sağlarız.
android:id=”@+id/add_note_button”
Bu özellik de bütün komponent ler de kullanılan ortak bir özelliktir. Burada verdiğimiz id değerleri ile Java kodlarında bu komponent ler üzerinde işlem yapabiliyoruz.
Bu yüzden bir komponent tanımlanırken mutlaka id değeri verilmelidir. Aksi taktir de bu komponent üzerinde hiç bir işlem yapamayız.

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

 

 

Relative layout ise içine yazılan komponent leri ilişkisel olarak konumlandırır. Linear layout içine yazılan komponent leri ne olursa olsun belirtilen kurala göre sıralarken, Relative layout daha ince işlemler yapacağınız milimlik hesaplar ile zor tasarımları kodlamamıza olanak sağlar.
Relative layout da da yukarıda bahsettiğim yükseklik ve genişlik özellikleri mevcuttur.

Bu iki layout un daha bir sürü özellikleri vardır. Bunları da ilerleyen derslerde örnekler üzerinden giderek anlatacağım.

Bir makalenin daha sonuna geldik, esenle kalın..

Kübra Hebeş

Bilgisayar Mühendisi