Jenis Layout dan Fragment di Android Studio
Jenis Layout dan Penggunaannya
Layout adalah class-class yang merupakan subclass dari ViewGroup yang berfungsi untuk mengelompokkan lebih dari 1 item (Widget) dan mengatur cara penempatannya / cara memposisikannya. Jenis Layout yang sering digunakan adalah FrameLayout, LinearLayout, dan RelativeLayout. Selain itu juga terdapat jenis layout yang lain, antara lain GridLayout, AbsoluteLayout, dan TableLayout.
FrameLayout
FrameLayout secara umum dibuat untuk menampilkan 1 buah item saja. Kita dapat gunakan untuk lebih dari 1 item dengan cara mengatur gravity (atribut android:layout_gravity) pada item untuk penempatannya, juga dapat kita gunakan jika kita ingin item yang ada saling bertumpukan (overlapping) antara 1 dengan yang lain.
FrameLayout tidak mendukung pengaturan ukuran item ataupun margin dalam bentuk persentase (terhadap ukuran layar). Untuk dapat mengatur dalam bentuk persentase kita dapat menggunakan subclassnya yaitu PercentFrameLayout yang terdapat pada Android support repository/library.
RelativeLayout
RelativeLayout mengatur item-item yang didalamnya pada posisi yang relative baik itu relative terhadap item lain atupun terhadap parentnya (RelativeLayout itu sendiri / layar), sehingga posisi item yang satu dapat berkaitan (saling mempengaruhi) dengan posisi item yang lain. Tetapi kita tidak boleh memiliki kaitan yang berputar (circular dependency) antara ukuran RelativeLayout dan posisi dari item, misalnya kita tidak bisa memiliki RelativeLayout yang tingginya kita atur menjadi WRAP_CONTENT tetapi item di dalamnya kita atur posisinya ALIGN_PARENT_BOTTOM.
RelativeLayout tidak mendukung pengaturan ukuran item ataupun margin dalam bentuk persentase (terhadap ukuran layar). Untuk dapat mengatur dalam bentuk persentase kita dapat menggunakan subclassnya yaitu PercentRelativeLayout yang terdapat pada Android support repository/library.
LinearLayout
LinearLayout mengatur item-item yang ada di dalamnya kedalam 1 arah saja, yaitu vertikal (berbentuk 1 kolom) atau horisontal (berbentuk 1 baris). Arah pada LinearLayout diatur menggunakan atribut orientation (android:orientation). LinearLayout mendukung pengaturan ukuran item dalam bentuk persentase menggunakan atribut weight (android:layout_weight) yang ditempatkan pada item, juga dapat ditambahkan atribut weight sum (android:weightSum) yang ditempatkan pada LinearLayout untuk mengatur untuk mengatur jumlah keseluruhan weight yang diinginkan.
Fragment
Fragments merupakan sebuah bagian dari user interface atau perilaku sebuah aplikasi yang dapat ditempatkan pada activity yang memungkinkan untuk mendesain activity yang modular, atau bisa dikatakan fragment semacam sub-activity. Kita dapat mengkombinasikan beberapa fragments untuk membuat sebuah interface yang lebih kompleks. Sebagai contoh, silahkan perhatikan gambar dibawah ini.
sumber (http://developer.android.com/images/fundamentals/fragments)
Ada beberapa point yang perlu diperhatikan jika menggunakan fragments:
• Kita dapat menggabungkan beberapa fragments untuk membuat sebuah UI yang lebih kompleks.
• Sebuah fragment dapat kita gunakan pada beberapa activity.
• Lifecycle Fragment berkaitan erat dengan activity lifecycle induk yang berarti ketika activity induk dihentikan sementara maka semua fragment yang tersedia pada activity tersebut juga dihentikan.
• Sebuah fragment dapat menerapkan perilaku yang tidak memiliki komponen user interface.
Layout adalah class-class yang merupakan subclass dari ViewGroup yang berfungsi untuk mengelompokkan lebih dari 1 item (Widget) dan mengatur cara penempatannya / cara memposisikannya. Jenis Layout yang sering digunakan adalah FrameLayout, LinearLayout, dan RelativeLayout. Selain itu juga terdapat jenis layout yang lain, antara lain GridLayout, AbsoluteLayout, dan TableLayout.
FrameLayout
FrameLayout secara umum dibuat untuk menampilkan 1 buah item saja. Kita dapat gunakan untuk lebih dari 1 item dengan cara mengatur gravity (atribut android:layout_gravity) pada item untuk penempatannya, juga dapat kita gunakan jika kita ingin item yang ada saling bertumpukan (overlapping) antara 1 dengan yang lain.
FrameLayout tidak mendukung pengaturan ukuran item ataupun margin dalam bentuk persentase (terhadap ukuran layar). Untuk dapat mengatur dalam bentuk persentase kita dapat menggunakan subclassnya yaitu PercentFrameLayout yang terdapat pada Android support repository/library.
RelativeLayout
RelativeLayout mengatur item-item yang didalamnya pada posisi yang relative baik itu relative terhadap item lain atupun terhadap parentnya (RelativeLayout itu sendiri / layar), sehingga posisi item yang satu dapat berkaitan (saling mempengaruhi) dengan posisi item yang lain. Tetapi kita tidak boleh memiliki kaitan yang berputar (circular dependency) antara ukuran RelativeLayout dan posisi dari item, misalnya kita tidak bisa memiliki RelativeLayout yang tingginya kita atur menjadi WRAP_CONTENT tetapi item di dalamnya kita atur posisinya ALIGN_PARENT_BOTTOM.
RelativeLayout tidak mendukung pengaturan ukuran item ataupun margin dalam bentuk persentase (terhadap ukuran layar). Untuk dapat mengatur dalam bentuk persentase kita dapat menggunakan subclassnya yaitu PercentRelativeLayout yang terdapat pada Android support repository/library.
LinearLayout
LinearLayout mengatur item-item yang ada di dalamnya kedalam 1 arah saja, yaitu vertikal (berbentuk 1 kolom) atau horisontal (berbentuk 1 baris). Arah pada LinearLayout diatur menggunakan atribut orientation (android:orientation). LinearLayout mendukung pengaturan ukuran item dalam bentuk persentase menggunakan atribut weight (android:layout_weight) yang ditempatkan pada item, juga dapat ditambahkan atribut weight sum (android:weightSum) yang ditempatkan pada LinearLayout untuk mengatur untuk mengatur jumlah keseluruhan weight yang diinginkan.
Fragment
Fragments merupakan sebuah bagian dari user interface atau perilaku sebuah aplikasi yang dapat ditempatkan pada activity yang memungkinkan untuk mendesain activity yang modular, atau bisa dikatakan fragment semacam sub-activity. Kita dapat mengkombinasikan beberapa fragments untuk membuat sebuah interface yang lebih kompleks. Sebagai contoh, silahkan perhatikan gambar dibawah ini.
sumber (http://developer.android.com/images/fundamentals/fragments)
Ada beberapa point yang perlu diperhatikan jika menggunakan fragments:
• Kita dapat menggabungkan beberapa fragments untuk membuat sebuah UI yang lebih kompleks.
• Sebuah fragment dapat kita gunakan pada beberapa activity.
• Lifecycle Fragment berkaitan erat dengan activity lifecycle induk yang berarti ketika activity induk dihentikan sementara maka semua fragment yang tersedia pada activity tersebut juga dihentikan.
• Sebuah fragment dapat menerapkan perilaku yang tidak memiliki komponen user interface.
Fragment belum ngerti,maksudnya gmana,layout yang bisa digabung??
ReplyDelete