Merhaba arkadaşlar bu yazımızda Andorid’in yerleşim türlerinden biri olan Relative Layout‘u anlatacağım size.
Android de birçok yerleşim türü bulunmakta ama ben ilk olarak relative layoutu anlatmak istedim yazılarımda. Bunun nedeni ise android studio da yeni bir proje açınca xml dosyasında varsayılan olarak gelen yerleşim türü relative layout olmasıdır. Relative layout ekranda gösterilmesini istediğimiz nesneleri isminden de anlaşılacağı gibi göreceli bir biçimde konumlandırmamıza yarıyor. Bir nesneyi ekrana yerleştirirken istediğimiz noktaya yerleştirmemizi sağlıyor relative layout. Bunu yaparken nesneleri diğer nesnelere olan uzaklığına göre konumlandırıyor android studio. Yeni proje açtığımızda varsayılan olarak ekranda bir “TextView” oluyor ve bunun yeri sol üst köşede oluyor, bundan sonra ekleyeceğimiz nesneleri ekranda konumlandırırken bunu TextViewe uzaklığından yararlanarak konumlandırıyor. Buradan şöyle bir sonuç çıkarabilirsiniz; “Her zaman ilk nesne sol üst köşede olamlı ve diğer nesneleri buna göre konumlandırmalıyız” Hayır.İlk nesnenin sol üst köşede olmasına gerek yok, böyle durumlarda ilk nesnenin başka nesne olmadığı için ona göre konumlandırmayıp nesneye “Margin” vererek konumlandırabiliriz. Şimdi kullanımını anlatayım.
Ekrana birçok nesne yerleştirdim ve nesnelerin ekranda görünümleri bu şekilde. Gelin şimdi beraber kodları inceleyelim.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"//Layoutun genişliği verilmiş. Match_parent: Tamamen kapla anlamına gelir. android:layout_height="match_parent"//Layoutun yüksekliği istenmiş.Tamamen kaplanmasını istemişim tools:context="com.onedevelopers.devrim.myapplication.MainActivity" TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" android:layout_marginLeft="55dp"//Soldan 55dp margin yani boşluk vermişim. android:layout_marginTop="69dp"//Yukardan 69dp margin vermişim android:id="@+id/textView" //Nesnenin id'si verilmiş. Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="New Button" android:id="@+id/button" android:layout_centerVertical="true"//Her zaman ekranın yüksekliği hesaplanarak tam ortada durmasını sağlar. android:layout_toRightOf="@+id/textView"//İd'si verilen nesnenin sağına yerleştirilmiş. android:layout_toEndOf="@+id/textView"//İd'si verilen nesnenin sonuna göre yerleştirilmiş. Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="New Button" android:id="@+id/button2" android:layout_below="@+id/button"//İdsi verilen nesnenin altına yerleştirilir. android:layout_alignLeft="@+id/textView"//İdsi verilen nesnenin soluna yerleştirilmiş. android:layout_alignStart="@+id/textView"//İdsi verilen nesnenin başlangıç noktasına göre yerleştirilmiş. android:layout_marginTop="67dp" //Yukaıdan 67dp margin verilmiş. Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="New Button" android:id="@+id/button3" android:layout_alignBottom="@+id/textView"//Id'si verilen nesnenin altına yerleştirilmiş. android:layout_alignParentRight="true"//İçinde bulunan layout'un en sağına yerleştirilmiş. android:layout_alignParentEnd="true" //İçinde bulunan layout'un en altıan yerleştirilmiş. Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="New Button" android:id="@+id/button4" android:layout_alignParentBottom="true"//İçinde bulunduğuu nesnenin en altına yerleştirilmiş. android:layout_alignLeft="@+id/button3"//Id'si verilen nesnenin soluna yerleştirilmiş. android:layout_alignStart="@+id/button3" //Button'un başlangıç noktası Id'si verilen nesnenin başlangıç noktasına göre belirlenmiş. Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="New Button" android:id="@+id/button5" android:layout_alignParentTop="true"//İçinde bulunduğu layout'un en üstüne yerleştirilmiş. android:layout_alignParentLeft="true"//İçinde bulunduğu layout'un en soluna yerleştirilmiş. android:layout_alignParentStart="true" //İçinde bulunduğu layout'un en üstüne yerleştirilmiş. RelativeLayout |
Bu yazımda umarım Relative Layout’u sağlıklı bir şekilde anlatabilmişimdir. Bir dahaki yazımda Linear Layout’u size anlatmaya çalışacağım.