Pengenalan dan Contoh Program LinearLayout, RelativeLayout, TableLayout, dan AbsoluteLayout
Pengertian Layout
Menurut Developer Android, Layout menentukan struktur untuk antarmuka pengguna di aplikasi Anda, seperti di dalam aktivitas. Semua elemen pada layout dibuat menggunakan hierarki objek View dan ViewGroup. View biasanya menggambar sesuatu yang pengguna bisa melihat dan berinteraksi dengannya. Sedangkan ViewGroup adalah container yang tidak terlihat yang menentukan struktur layout untuk View dan objek ViewGroup lainnya.
![]() |
Layout Android Studio |
Jadi layout adalah tampilan berupa tata letak di Android untuk mengatur penempatan teks, gambar, ataupun komponen lainnya sehingga tampilan pada aplikasi yang dibuat terlihat interaktif, rapi, nyaman dan tentunya user friendly untuk pengguna. Pada layout ini lah kita dapat mengatur seperti apa tema dan warna dari aplikasi yang akan kita bangun. Hal ini akan menjadi sangat penting karena desain aplikasi akan mempengaruhi nilai jual dan nilai guna aplikasi itu sendiri. Berikut adalah contoh macam-macam layout yang umum digunakan di Android Studio.
LinearLayout
LinearLayout adalah sekelompok tampilan yang menyejajarkan semua anak dalam satu arah, secara vertikal atau horizontal. Anda bisa menetapkan arah layout dengan atribut android:orientation. Semua anak LinearLayout akan ditumpuk satu sama lain, sehingga daftar vertikal hanya akan memiliki satu anak per baris, berapa pun lebarnya, dan daftar horizontal hanya akan setinggi satu baris (tinggi anak yang tertinggi, ditambah pengisi). LinearLayout mematuhi margin antara anak dan gravitasi (sejajar kanan, tengah, atau kiri) setiap anak (https://developer.android.com).
Linear layout termasuk layout yang sangat mudah untuk digunakan hal ini karena peletakkannya cukup sederhana jika kita akan menyusun view atas dan bawah maka kita cukup menggunakan linear layout vertikal dan jika kita akan menyususn view bersebelahan maka gunakan linear layout yang berorientasi horizintal. Namun penggunaan Linear layout pada susunan desain yang complex tidak disarankan karena dapat membuat tumpukan layout yang begitu dalam. Banyaknya tumpukan layout/ hirarki bertingkat yang cukup banyak akan menyebabkan performa aplikasi menurun.
Disini saya akan membuat dua program sederhana bagaimana cara membuat LinearLayout dengan sedikit perbedaan di padding (kanan & kiri) dan komponen nya, untuk lebih jelasnya silahkan teman – teman lihat tutorial dibawah:
Contoh Program LinearLayout
- Pertama kita jalankan aplikasi IDE Android Studio, caranya :
- Buka activity_main.xml nya dan kemudian ketikan code program seperti di bawah:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" tools:context=".MainActivity" > <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#4CAF50" android:padding="16dp" android:fontFamily="casual" android:textSize="21dp" android:textStyle="bold" android:text="Vertical 1" android:textColor="@android:color/white" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#3F51B5" android:padding="16dp" android:fontFamily="casual" android:textSize="21dp" android:textStyle="bold" android:text="Vertical 2" android:textColor="@android:color/white" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:layout_width="wrap_parent" android:layout_height="wrap_content" android:background="#E91E63" android:padding="16dp" android:fontFamily="casual" android:textStyle="bold" android:text="Horizontal 1" android:textColor="@android:color/white" /> <TextView android:layout_width="wrap_parent" android:layout_height="wrap_content" android:background="#673AB7" android:padding="16dp" android:fontFamily="casual" android:textStyle="bold" android:text="Horizontal 2" android:textColor="@android:color/white" /> <TextView android:layout_width="wrap_parent" android:layout_height="wrap_content" android:background="#2196F3" android:padding="16dp" android:fontFamily="casual" android:textStyle="bold" android:text="Horizontal 3" android:textColor="@android:color/white" /> </LinearLayout> </LinearLayout>
- Bila sudah menambahkan code program seperti diatas , kemudian silahkan untuk run projeknya, maka tampilan hasilnya seperti gambar dibawah.
- Pilih → Start Android Studio
- Pilih → Start new Android Studio Project
- Pilih → Empty Activity → Next
- Configure your Project :
Name: LinearLayout_1
Package Name: blog.gasdong.com
Save Location: D\:2021\Semester6\TI-1\14518511 Ananda Ariwibawa\LinearLayout
Language: Java
Minimum SDK: API14
RelativeLayout
Relative Layout menurut https://developer.android.com, yaitu grup tampilan yang menampilkan tampilan turunan di posisi relatif. Posisi setiap tampilan dapat ditentukan sebagai posisi relatif terhadap elemen yang setara (seperti di sebelah kiri atau di bawah tampilan lain) atau di posisi relatif terhadap RelativeLayout induk (seperti sejajar dengan bagian bawah, kiri, atau tengah). RelativeLayout sangat efektif untuk mendesain antarmuka pengguna karena dapat menghilangkan grup tampilan bertingkat dan menjaga hierarki tata letak Anda tetap sederhana, sehingga meningkatkan performa. Jika ternyata kita menggunakan beberapa grup LinearLayout bertingkat, kita dapat menggantinya dengan RelativeLayout tunggal.
Dari pengertian tersebut dapat kita maknai bahwa relative layout dapat menyederhanakan penggunaan linear layout bertingkat demi meningkatkan performa aplikasi. Bagi admin penggunaan relative layout sangat lah mudah, kita dapat menaruh view disebelah kanan atau kiri dengan kunci android:layout_toRightOf (untuk sebelah kanan view lain) dan android:layout_toLeftOf (untuk sebelah kiri view lain). Untuk peletakan view sejajar yang bersebelahan maka menggunkan id dari view yang akan menjadi referensi dari view yang akan kita atur.
Disini saya akan membuat dua program sederhana bagaimana cara membuat RelativLayout dimana setiap projek memiliki perbedaan di setiap komponen maupun background layoutnya, untuk lebih jelasnya silahkan teman – teman lihat tutorial dibawah:
Contoh Program RelativeLayout
- Pertama kita jalankan aplikasi IDE Android Studio, caranya :
- Buka activity_main.xml nya dan kemudian ketikan code program seperti di bawah:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:text="Tengah" android:textSize="18sp" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerHorizontal="true" android:text="Kiri Atas" android:textSize="18sp" /> <Button android:id="@+id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:text="T.Atas" android:textSize="18sp" /> <Button android:id="@+id/button4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerHorizontal="true" android:text="Kanan Atas" android:textSize="18sp" /> <Button android:id="@+id/button5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:text="Kiri.T" android:textSize="18sp" /> <Button android:id="@+id/button6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:text="Kanan.T" android:textSize="18sp" /> <Button android:id="@+id/button7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentBottom="true" android:text="Kiri Bawah" android:textSize="18sp" /> <Button android:id="@+id/button8" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:text="T.Bawah" android:textSize="18sp" /> <Button android:id="@+id/button9" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_alignParentBottom="true" android:text="Kanan Bawah" android:textSize="18sp" /> </RelativeLayout>
- Dan terakhir run program hasil dari code diatas, akan terlihat seperti gambar dibawah ini:
RelativeLayout
- Pilih → Start Android Studio
- Pilih → Start new Android Studio Project
- Pilih → Empty Activity → Next
- Configure your Project :
Name: RelativeLayout_1
Package Name: blog.gasdong.com
Save Location: D\:2021\Semester6\TI-1\14518511 Ananda Ariwibawa\RelativeLayout_1
Language: Java
Minimum SDK: API14
TableLayout
TableLayout merupakan teknik penggambaran user interface aplikasi android berdasarkan baris dan kolom. Baris adalah berurutan kebawah dan kolom berurutan menyamping. Untuk urusan layouting menggunakan TableLayout, developer Android perlu mengetahui beberapa hal, diantaranya :
- TableLayout di Android secara default tidak menampilkan garis batas untuk masing-masing baris dan kolom.
- Tiap baris table bisa memiliki satu atau banyak sel.
- Tiap sel hanya diperbolehkan memiliki satu objek view.
Disini saya akan membuat dua program sederhana bagaimana cara membuat TableLayout dengan sedikit perbedaan di padding, stretch coloums dan komponen nya, untuk lebih jelasnya silahkan teman – teman lihat tutorial dibawah:
Contoh Program TableLayout
- Pertama kita jalankan aplikasi IDE Android Studio, caranya :
- Buka activity_main.xml nya dan kemudian ketikan code program seperti di bawah:
<?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="10dp" android:stretchColumns="1, 3" tools:context=".MainActivity" > <TableRow android:layout_width="match_parent" android:layout_height="match_parent" android:layout_centerInParent="true"> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_span="4" android:gravify="center" android:textStyle="bold" android:fontFamily="monospace" android:text="Form Login" andoid:textSize="22sp" /> </TableRow> <TableRow android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingRight="10dp" android:textStyle="bold" android:fontFamily="monospace" android:text="Username" /> <EditText android:id="@+id/editText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_span="3" android:ems="10" android:inputType="textPersonName" /> </TableRow> <TableRow android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingRight="10dp" android:textStyle="bold" android:fontFamily="monospace" android:text="Password" /> <EditText android:id="@+id/editText2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_span="3" android:ems="10" android:inputType="textPassword" /> </TableRow> <TableRow android:layout_width="match_parent" android:layout_height="match_parent"> <Button android:id="@+id/button5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_column="1" android:layout_gravity="right" android:textStyle="bold" android:fontFamily="monospace" android:text="Login" /> <Button android:id="@+id/button6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textStyle="bold" android:fontFamily="monospace" android:inputType="Cancel" /> <Button android:id="@+id/button7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="left" android:textStyle="bold" android:fontFamily="monospace" android:text="Forget Pswd?" /> </TableRow> </TableLayout>
- Jika sudah menambahkan code program seperti diatas, kemudian silahkan untuk run projeknya, maka tampilan hasilnya seperti gambar dibawah.
TableLayout
- Pilih → Start Android Studio
- Pilih → Start new Android Studio Project
- Pilih → Empty Activity → Next
- Configure your Project :
Name: TableLayout_1
Package Name: blog.gasdong.com
Save Location: D\:2021\Semester6\TI-1\14518511 Ananda Ariwibawa\TableLayout_1
Language: Java
Minimum SDK: API14
AbsoluteLayout
Absolute Layout adalah salah satu komponen user interface. Yang digunakan untuk mengatur tata letak suatu widget seperti Button, TextView, EditText, dsb, dengan menggunakan atribut layout_x dan layout_y pada komponen user interface, seperti Button, yang digunakan untuk mengatur koordinat atau angka di atribut layout_x dan layout_y.
Disini saya akan membuat program sederhana bagaimana cara membuat AbsoluteLayout di android studio, untuk lebih jelasnya silahkan teman – teman lihat tutorial dibawah:
Contoh Program AbsoluteLayout
- Pertama kita jalankan aplikasi IDE Android Studio, caranya :
- Buka activity_main.xml nya dan kemudian ketikan code program seperti di bawah:
<?xml version="1.0" encoding="utf-8"?> <AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="8dp" android:background="#FFF5F5F5" tools:context=".MainActivity" tools:ignore="Deprecated" > <TextView android:id="@+id/textView" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:text="Contoh Absolute Layout" android:textSize="21sp" android:fontFamily="monospace" android:textStyle="bold" tools:layout_editor_absoluteX="64dp" tools:layout_editor_absoluteY="72dp" /> <EditText android:id="@+id/editText" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_y="30dp" android:hint="Email" android:fontFamily="monospace" android:inputType="textPersonName" tools:layout_editor_absoluteX="0dp" tools:layout_editor_absoluteY="28dp" /> <EditText android:id="@+id/editText2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_y="80dp" android:hint="Password" android:fontFamily="monospace" android:inputType="textPassword" tools:layout_editor_absoluteX="0dp" tools:layout_editor_absoluteY="28dp" /> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="16dp" android:layout_y="141dp" android:fontFamily="monospace" android:text="Masuk" android:textStyle="bold" tools:layout_editor_absoluteX="0dp" tools:layout_editor_absoluteY="126dp" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="294dp" android:layout_y="139dp" android:fontFamily="monospace" android:text="Daftar" android:textStyle="bold" tools:layout_editor_absoluteX="0dp" tools:layout_editor_absoluteY="126dp" /> </AbsoluteLayout>
- Kemudian silahkan untuk run projeknya, maka tampilan hasilnya seperti gambar dibawah.
AbsoluteLayout
- Pilih → Start Android Studio
- Pilih → Start new Android Studio Project
- Pilih → Empty Activity → Next
- Configure your Project :
Name: AbsoluteLayout_1
Package Name: blog.gasdong.com
Save Location: D\:2021\Semester6\TI-1\14518511 Ananda Ariwibawa\AbsoluteLayout_1
Language: Java
Minimum SDK: API14
Gabung dalam percakapan