5. Layout dan App Resource

Share:
Yang akan Anda pelajari pada Artikel ini yaitu :
* 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
 

1 komentar:

  1. Artikelnya bagus mudah dipahami, kunjungi website kami juga ya! untuk mendapatkan pengalaman lebih :)

    BalasHapus