Perbedaan diantara keduanya terletak pada tata letak penempatan elemen yang ada di dalamnya.
Linear layout adalah layout yang terstruktur. linear layout akan meletakkan elemen yang ada di dalamnya secara berurutan tergantung orientationnya. jika orientationnya vertical, maka peletakan elemen akan terurut kebawah. Sedangkan jika orientationnya horizontal (secara default, orientation horizontal tidak ditulis di dalam XML), maka peletakan elemennya akan terurut ke samping.
Sednagkan pada Relative layout adalah layout yang tergantung. Relative layout akan meletakkan elemen secara bebas, tidak terurut. Peletakan berdasarkan ketergantungannya kepada yang lain misal kepada parent atau kepada elemen lain.
untuk lebih jelasnya, buatlah project "Contoh Layout". buka folder layout, lalu liat XMLnya.
gantikan isinya dengan kode layout dibawah ini.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"Di layout tersebut, terdapat tiga sub layout yaitu linear vertical, linear horizontal, dan relative layout. Setelah itu, lakukan penambahan elemen pada tiap layout dengan DRAG and DROP melalui graphical layout. lihat apa yang terjadi..
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/black"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:orientation="vertical" >
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
</LinearLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
</RelativeLayout>
</LinearLayout>
ini adalah layout modifikasi saya :
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/black"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:orientation="vertical" >
<EditText
android:id="@+id/editText2"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Button" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1" >
<requestFocus />
</EditText>
</LinearLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
<EditText
android:id="@+id/editText3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="54dp"
android:layout_marginTop="22dp" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/editText3"
android:layout_marginRight="76dp"
android:text="Button" />
</RelativeLayout>
</LinearLayout>
Masih banyak layout yang lain, saya harap Anda belajar sendiri bagaimana menggunakannya. Karna saya yakin dengan belajar sendiri, akan lebih mengena maksudnya. Termasuk dengan contoh yang saya berikan ini, hanya secuil dari fungsi-fungsi yang ada di Android. Sekali lagi, Anda harus mencoba. Untuk pertanyaan lebih lanjut bisa dengan menulis comment dibawah ini. :D Terima kasih
Selanjutnya saya akan sharing tentang menggunakan tombol dengan onClickListener button android.