Secara garis besar, hal-hal mengenai fragment antara lain:
- Fragment menguraikan fungsionalitas dan UI aplikasi menjadi modul-modul yang bisa digunakan kembali.
- Menambahkan beberapa fragment ke sebuah layar bisa mencegah perpindahan antar activity.
- Fragment memiliki siklus hidup, back stack dan state sendiri.
- Fragment memerlukan API level 11 atau diatasnya.
Fragment
merupakan perilaku atau sebagian User Interface dalam sebuah Activity
. Kita bisa menggabungkan beberapa fragment dalam sebuah activity untuk membuat UI dengan banyak panel dan menggunakan sebuah fragment pada banyak activity. Kita bisa menganggap fragment sebagai sebuah seksi modular dari sebuah activity, yang mana memiliki siklus hidup sendiri, menerima event masukan sendiri, yang bisa ditambah atau dihapus ketika activity berjalan (atau bisa dianggap "sub activity" yang bisa digunakan kembali pada ctivity yang berbeda).
Sebuah fragment harus selalu ditanamkan pada sebuah activity, dan siklus hidup fragment secara langsung terpengaruh oleh siklus hidup activity induknya. Misalnya, ketika activity pause, semua fragment di dalamnya juga pause, dan ketika activity destroy, begidut juga fragment di dalamnya. Akan tetapi, ketika sebuah activiy berjalan (berada pada tahap resume siklus hidup), kita bisa memanipulasi setiap fragment dengan bebeas, misalnya menambah atau menghapusnya. Ketika kita melakukan sebuah transaksi fragment, kita juga bisa menambahkannya di back stack yang dimanage oleh activity, karena setiap entry back stack dalam activity adalah sebuah record dari transaksi fragment yang terjadi. Dengan back stack user bisa membalik transaksi fragment (mundur ke belakang) dengan menekan tombol kembali.
Ketika kita menambahkan sebuah fragment sebagai bagian layout activity, fragment tersebut hidup dalam sebuah ViewGroup
di dalam hierarki tampilan activity dan fragment mendefinisikan tampilan layoutnya sendiri. Kita bisa memasukan sebuah fragment ke dalam layout activity dengan mendeklarasikan fragment di dalam file layout miliki activity, sebagai sebuah elemen <fragment>
, atau dari kode aplikasi kita dengan menambahkannya ke sebuah ViewGroup
yang sudah ada. Bagaimanapun juga, sebuah fragment tidak diharuskan menjadi bagian dari layout activity, kita juga bisa menggunakan sebuah fragment tanpa UI sendiri sebagai sebuah pekerja tidak terlihat untuk activity.
Pembahasan fragment pada post berikutnya adalah mengenai bagaimana membuat aplikasi agar menggunakan fragment, termasuk bagaimana fragment bisa me-maintain state ketika ditambahkan ke back stack activity, berbagi event dengan activity dan fragment lain dalam activity, berkontribusi ke action bar activity, dan lain-lain.
Tweet
berarti pak Fragment ga mendukung untuk untuk gingerbread ya?? atau masi bisa dibuat tapi dengan memisahkan Fragment A dengan Activity A dan Fragment B dengan Activity B?
BalasHapusGingerbread (Android 2.3) memang tidak mendukung Fragment. Karena, Fragment baru diperkenalkan pada Honeycomb (Android 3.0), API level 11.
Hapussaya coba menggunakan teknik fragmentasi untuk layout dashboard. tapi kenapa saya run di 2.3.7 custom rom bisa? apa mungkin tetap ada yang hilang meski bisa jalan di 2.3.7 tanpa saya ketahui om?
BalasHapusPakai custom ROM ya, mungkin karena udah di custom makanya jadi bisa. Tapi fragment di sini adalah dari sisi aplikasi, bukan ROM android. Kalau ROM android, saya sendiri belum belajar sampai situ mas.
Hapus