kodbankasi http://kodbankasi.org/kodbankasi

Android Layout Türleri

Layoutlar uygulamamızda ki activitylerin görsel kısmının yaratıldığı xml uzantılı dosyalardır.Bu dosyalarda hem manuel olarak hemde sürükle bırak yöntemiyle değişiklikler yapmak mümkündür.Layout dosyalarımız projemizin altındaki klasörlerde res/layout/layoutAdi.xml şeklinde bulunur.

Layout türleri;

1-LinearLayout: Linearlayoutlar İçerisine yerleştirilen elemanların yatay veya dikey olarak ard arda  sıralanmasını sağlar.Dikey sıralamak istenirse  android:orientation=”vertical” olarak yatay sıralanmak istenirse android:orientation=”horizantal” olarak xml dosyasında LinearLayout tagları içerisine yazılmalıdır.Dikey olarak sıralanmıç bir linearlayout xml kodları ve emulator gorunumu aşağıdaki gibidir.

<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="vertical"
tools:context=".MainActivity" >
<TextView
android:text="Sarı"
android:background="#cccc00"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<TextView
android:text="Kırmızı"
android:background="#cc0000"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<TextView
android:text="Mavi"
android:background="#0000cc"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>

linear

2-RelativeLayout: Bu layout elemanları birbirine göre sıralar. Paletten bir eleman sürükleyip bıraktığınızda cetvel gibi bir şeklin çıktığını ve hizalama işlemini diğer elemanlara göre yapıldığını görebilirsiniz. RelativeLayout  da Linear da olduğu gibi elemanın ilk başta olması için ilk once onun eklenmesine gerek yoktur.

</p>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginTop="39dp"
android:background="#cccc00"
android:text="TextView" />
<TextView
android:id="@+id/textView2"
android:layout_width="90dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/textView1"
android:layout_marginLeft="26dp"
android:layout_marginTop="48dp"
android:background="#cc0000"
android:text="TextView" />
<Button
android:id="@+id/button1"
android:layout_width="70dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:background="#0000cc"
android:layout_toRightOf="@+id/textView2"
android:text="Button" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/textView2"
android:layout_marginRight="54dp"
android:layout_marginTop="32dp"
android:text="TextView" />
</RelativeLayout>
<p style="text-align: left;">

relative

3-TableLayout: Elemanlarınızı tablo düzeninde kullanmaya yarar. Htmlde ki tablo mantığına benzer bir mantıktadır.

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:stretchColumns="1" >
<TableRow >
<TextView android:id="@+id/textviewAd"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Ad:"
android:textSize="12dp"
/>
<EditText android:id="@+id/edittextAd"
android:layout_height="wrap_content"
android:layout_width="fill_parent" />
</TableRow>
<TableRow >
<TextView android:id="@+id/textviewAd"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Soyad:"
android:textSize="12dp"
/>
<EditText android:id="@+id/edittextAd"
android:layout_height="wrap_content"
android:layout_width="fill_parent"/>
</TableRow>
<Button android:id="@+id/butonGonder"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="Kaydet"/>
</TableLayout>

table

4-FrameLayout: Elemanların üst üste göründüğü layout türüdür.Buton olayları sonucunda başka bir eleman gösterme ve benzeri işlemler için kullanılır.Frame layout örneğinde resim ve üzerinde bir tane buton attım bu şekilde üst üste elemanlar eklenebilir.

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ImageView
android:id="@+id/ilkResim"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scaleType="center"
android:src="@drawable/android_yer" />
<ImageView
android:id="@+id/ikinciResim"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scaleType="center"
android:src="@drawable/android"
android:visibility="gone"/>
<Button
android:id="@+id/butonChange"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:padding="10dp"
android:background="#000"
android:textColor="#fff"
android:text="Tıkla"/>
</FrameLayout>

framelayout

Bir önceki yazımız olan Javada ++ ve -- operatörleri başlıklı yazımızı da inceleyebilirsiniz.

Bir yorum

  1. Şu sıralar genel kullanım linear ve relative den çıkıp Framelayout’a dönmüş durumda gibi. Birçok uygulamada Frame’e rastlıyorum.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak.

Bu yazı da ilginizi çekebilir !

accelerometer

Android Sensör Kullanımı

Bir süre ara verdiğimiz android derslerimize kaldığımız yerden devam ediyoruz. Bir önceki makalemizde options menü ...