* Pengenalan jenis-jenis layout
* Menggunakan LinearLayout dan RelativeLayout
* Menggunakan Application Resource
Pengenalan Layout
Viewgroup dapat juga disebut dengan layout karena Viewgroup mengelola tampilan child dengan cara khusus dan umumnya digunakan sebagai root view. Berikut jenis-jenis layout :
* LinearLayout : Viewgroup yang childnya diposisikan dan disejajarkan secara horizontal atau secara vertikal
* RelativeLayout : Viewgroup yang childnya diposisikan dan disejajarkan relatif terhadap tampilan komponen dalam lainnya.
* ConstrainLayout : Viewgroup yang childnya menggunakan titik jangkar, tepi, dan panduan untuk mengontrol posisi tampilan relatif terhadap komponen lain di layout. ConstrainLayout didesain untuk mempermudah saat menyeret dan melepaskan tampilan di editor layout.
* AbsoluteLayout : ViewGroup yang childnya disusun ke dalam baris dan kolom
* FrameLayout : Viewgroup childnya bertumpuk.
* GridLayout : Viewgroup childnya ditempatkan dalam kotak persegi panjang yang bisa digulir.
Atribut umum Viewgroup
* layout_height : untuk mengatur tinggi dari View
* layout_width : untuk mengatur lebar dari View
* layout_margin : untuk mengatur extra space di semua sisi luar View.
* layout_marginTop : mengatur extra space sisi atas layout.
* layout_marginBottom :mengatur extra space sisi bawah layout.
* layout_marginLeft : mengatur extra space sisi kiri layout.
* layout_marginRight : mengatur extra space sisi kanan layout.
* layout_gravity : menentukan posisi child View.
* layout_weight : menentukan seberapa banyak extra space dialokasikan.
* layout_x : menentukan koordinat x layout.
* layout_y : menentukan koordinat y layout.
* paddingLeft : mengisi padding kiri layout.
* paddingRight : mengisi padding kanan layout.
* paddingTop : mengisi padding atas layout.
* paddingBottom : mengisi padding bawah layout.
Menggunakan LinearLayout
LinearLayout mengelompokkan child view-nya dengan menampilkan dalam satu baris atau kolom, vertikal atau horizontal. Viewgroup biasa digunakan untuk membuat form. Anda bisa menemukan atribut LinearLayout di android.widget.LinearLayout.LayoutParams. Di bawah ini merupakan beberapa atribut penting dari LinearLayout.
Nama atribut ( semua
diawali dengan android: )
|
Digunakan pada
|
Deskripsi
|
Nilai
|
orientation
|
Parent View
|
ChildView akan ditampilkan secara horizontal atau
vertikal
|
horizontal atau vertical
|
gravity
|
Parent View
|
Posisi childView dalam layout
|
Beberapa konstan dipisahkan dengan “|”.
Konstannya, yaitu top, bottom, left,
right, center_vertical, fill_vertical, center_horizontal, fill_horizontal,
center, fill, clip_vertical, clip_horizontal, start, dan end
|
weightSum
|
Parent View
|
Jumlah total dari semua kontrol weight dari child.
|
Angka yang mendefinisikan jumlah total weight dari semua childView.
Defaultnya adalah 1
|
layout_gravity
|
Child View
|
Digunakan untuk mengatur posisi suatu View
|
Beberapa konstan dipisahkan dengan “|”.
Konstannya, yaitu top, bottom, left, right, center_vertical, fill_vertical,
center_horizontal, fill_horizontal, center, fill, clip_vertical,
clip_horizontal, start, dan end.
|
layout_weight
|
Child View
|
Weight untuk suatu child View. Digunakan untuk
memberikan ratio ruang kosong pada layar dan bergantung pada kontrol parent.
|
Jumlah nilai dari semua child View harus sama
dengan nilai atribut parent weightSum.
Contoh, child yang satu menggunakan nilai 0.3 dan child yang lain menggunakan
0.7 totalnya adalah 1. Nilai 1 harus sama dengan nilai weightSum yaitu 1.
|
Menggunakan RelativeLayout
Relativelayout digunakan untuk mengatur posisi child view bergantung pada parent atau posisi child View lainnya. Anda bisa mengatur posisi childView berada di bawah, kiri, kanan, atas, sisi dalam childView lain ataupun bergantung pada parent. Dengan kata lain, child View dapat berelasi satu sama lain. Di bawah ini merupakan beberapa atribut penting dari RelativeLayout.
Nama atribut ( semua
diawali dengan android: )
|
Digunakan pada
|
Deskripsi
|
Nilai
|
gravity
|
Parent View
|
Posisi childView dalam layout
|
Beberapa konstan dipisahkan dengan “|”.
Konstannya, yaitu top, bottom, left,
right, center_vertical, fill_vertical, center_horizontal, fill_horizontal,
center, fill, clip_vertical, clip_horizontal, start, dan end
|
layout_centerInParent
|
Child View
|
Membuat child berada pada posisi tengah vertikal
dan horizontal
|
True atau false
|
layout_centerHorizontal
|
Child View
|
Membuat child berada pada posisi tengah horizontal.
|
True atau false
|
layout_centerVertical
|
Child View
|
Membuat child berada pada posisi tengah vertikal.
|
True atau false
|
layout_alignParentTop
|
Child View
|
Memposisikan childView di sisi dalam atas parentView.
|
True atau false
|
layout_aligntParentBottom
|
Child View
|
Memposisikan childView di sisi dalam bawah
parentView
|
True atau false
|
layout_alignParentLeft
|
Child View
|
Memposisikan childView di sisi dalam kiri parentView
|
True atau false
|
layout_alignParentRight
|
Child View
|
Memposisikan childView di sisi dalam kanan
parentView
|
True atau false
|
layout_alignRight
|
Child View
|
Melekatkan sisi kanan childView dengan sisi kanan
childView lain, terhadap ID yang ditentukan
|
Sebuah View, contoh @id/MyButton
|
layout_alignLeft
|
Child View
|
Melekatkan sisi kiri childView dengan sisi kiri
childView lain, terhadap ID yang ditentukan
|
Sebuah View, contoh @id/MyButton
|
layout_alignTop
|
Child View
|
Melekatkan sisi atas childView dengan sisi atas
childView lain, terhadap ID yang ditentukan
|
Sebuah View, contoh @id/MyButton
|
layout_alignBottom
|
Child View
|
Melekatkan sisi bawah childView dengan sisi bawah
childView lain, terhadap ID yang ditentukan
|
Sebuah View, contoh @id/MyButton
|
layout_above
|
Child View
|
Memposisikan sisi bawah suatu childView di atas
childView lain, terhadap ID yang ditentukan
|
Sebuah ID, contoh @id/Button1
|
layout_below
|
Child View
|
Memposisikan sisi atas suatu childView di bawah
childView lain, terhadap ID yang ditentukan
|
Sebuah ID, contoh @id/Button1
|
layout_toLeftOf
|
Child View
|
Memposisikan sisi kanan suatu childView di kiri
childView lain, terhadap ID yang ditentukan
|
Sebuah ID, contoh @id/Button1
|
layout_toRightOf
|
Child View
|
Memposisikan sisi kiri suatu childView di kanan
childView lain, terhadap ID yang ditentukan
|
Sebuah ID, contoh @id/Button1
|
Untuk mempelajari lebih lanjut tentang Layout lainnya, silakan buka link berikut :
* LinearLayout
* RelativeLayout
* TableLayout
* AbsoluteLayout
* FrameLayout
* GridView
* ConstrainLayout
ConstrainLayout merupakan layout baru yang dapat Anda gunakan untuk membuat UI yang responsif.
Menggunakan Application Resource
Aplikasi yang bagus adalah aplikasi yang mengakses sumber daya secara programatikal daripada menggunakannya secara hardcoding ke dalam source code. Ada beberapa alasan. Menyimpan resource di suatu merupakan pengembangan yang lebih terorganisasi. Mengeksternalisasikan sumber daya seperti string akan memudahkan untuk menglokalisasikan aplikasi untuk bahasa-bahasa yang berbeda berdasarkan daerah geografis. Selain itu, pembuatan string resource juga akan memudahkan jika string digunakan beberapa kali dan terjadi perubahan. Kita hanya perlu mengubah satu nilai string resource tanpa harus mengubahnya di source code satu persatu.
Apa itu Application Resource ?
Semua aplikasi android dibuat dengan dua hal : fungsionalitas (instruksi kode) dan data (sumber daya). Fungsionalitas adalah kode yang menentukan bagiamana aplikasi akan bekerja, di dalamnya terdapat algoritma yang membuat aplikasi berjalan. Sumber daya (resource) berupa text string, style & theme, color, dimension, image & icon, audio, video, dan data lainnya yang digunakan oleh aplikasi.
Lokasi Application Resource
File sumber daya Android disimpan secara terpisah dari file kelas .java di project Android. Pada umumnya sumber daya disimpan dalam XML. Semua sumber daya harus dibuat di direktori project /res di dalam sub-direktori tertentu.
Di bawah ini merupakan nama-nama sub-direktori /res :
* /res/drawable-*/ : berisi sumber daya grafis
* /res/layout/ : berisi sumberdaya layout dan UI
* /res/menu/ : berisi sumberdaya untuk menampilkan option atau action di activity
* /res/values/ : berisi sumberdaya string, style & theme, color, dimension.
Resource digunakan pada komponen UI seperti textView, imageView, Button, dan lain-lain. Application Resource dapat ditulis dalam kode xml ataupun dalam kode java.
Contoh :
res/values/strings.xml
res/values/colors.xml
res/layout/my_layout.xml
Artikelnya bagus mudah dipahami, kunjungi website kami juga ya! untuk mendapatkan pengalaman lebih :)
BalasHapus