Saya telah membaca dokumentasi dan beberapa utas pertanyaan lain tentang topik ini dan saya tidak benar-benar merasa yakin; Saya tidak melihat dengan jelas batasan penggunaan teknik ini.
Fragmen sekarang dipandang sebagai Praktik Terbaik ; setiap Kegiatan pada dasarnya harus merupakan dukungan untuk satu atau lebih Fragmen dan tidak memanggil tata letak secara langsung.
Fragmen dibuat untuk:
memungkinkan
Activity
untuk menggunakan banyak fragmen, untuk mengubah di antara mereka, untuk menggunakan kembali unit-unit ini ... ==>Fragment
itu benar-benar bergantung padaContext
aktivitas, jadi jika saya memerlukan sesuatu yang generik yang dapat saya gunakan kembali dan tangani dalam banyak Kegiatan, saya bisa buat tata letak atau Tampilan kustom saya sendiri ... Saya tidak akan peduli tentang Lapisan Pengembangan Kompleksitas tambahan ini yang akan ditambahkan fragmen.penanganan yang lebih baik untuk resolusi yang berbeda ==> OK untuk tablet / ponsel jika prosesnya panjang, kami dapat menampilkan dua (atau lebih) fragmen dalam Aktivitas yang sama di Tablet, dan satu per satu di ponsel. Tetapi mengapa saya selalu menggunakan fragmen ?
menangani panggilan balik untuk bernavigasi di antara Fragmen (yaitu: jika pengguna Masuk Saya menunjukkan fragmen lain saya menunjukkan fragmen lain). ===> Coba lihat berapa banyak bug yang dimiliki SDK Log-in karena hal ini, untuk memahami bahwa itu benar-benar (?) ...
mengingat bahwa Aplikasi Android didasarkan pada Kegiatan ... Menambahkan siklus hidup lain dalam Kegiatan akan lebih baik untuk merancang Aplikasi ... Maksud saya modul, skenario, manajemen data dan konektivitas akan dirancang lebih baik, karena cara. ===> Ini adalah jawaban dari seseorang yang terbiasa melihat Android SDK dan Kerangka Android dengan visi Fragmen. Saya tidak berpikir itu salah, tetapi saya tidak yakin itu akan memberikan hasil yang baik ... Dan itu benar-benar abstrak ...
====> Mengapa saya menyulitkan hidup saya, lebih banyak coding, selalu menggunakannya? selain itu, mengapa ini merupakan praktik terbaik jika itu hanya alat untuk beberapa kasus? apa saja kasus ini?
sumber
Jawaban:
Fragmen adalah bagian modular dari suatu Kegiatan yang memiliki siklus hidupnya sendiri, menerima acara masukannya sendiri, yang dapat Anda tambahkan atau hapus saat aktivitas berjalan (semacam "sub aktivitas" yang dapat Anda gunakan kembali dalam aktivitas yang berbeda)
Terlepas dari keuntungan nyata menggunakan fragmen, optimisasi UI di berbagai layar, ini memungkinkan Anda mengelola pemrosesan latar belakang aktivitas tanpa komponen antarmuka pengguna yang terlihat.
Sekarang...
Meskipun disarankan, Anda tidak perlu melakukannya kecuali jika Anda berencana untuk mengontrol siklus hidup elemen individual dan / atau menggunakan kembali stack-state atau sejarah view sebelumnya.
sumber
Jika ada "use case" gateway "untuk skeptis fragmen, itu mungkin dialog. Metode lama ditinggalkan
showDialog(...)
,onCreateDialog(...)
, dll, yang bagus dalam rangka akan memanggil mereka untuk secara otomatis menghancurkan dan menciptakan dialog Anda saat aktivitas hosting yang hancur dan diciptakan. Jika Anda membuat dialog sendiri secara langsung, Anda harus mengelola semua hal itu sendiri. Tetapi jika Anda menggunakanDialogFragment
, Anda dapat sekali lagi membiarkan kerangka kerja mengaturnya untuk Anda. Dalam hal ini, fragmen dapat sangat menyederhanakan pengkodean Anda.sumber
Saya menanyakan pertanyaan ini lebih dari satu tahun yang lalu.
Saya menggunakan fragmen setiap hari dan saya akan merekomendasikannya.
Pertama-tama, saya ingin mengatakan bahwa menggunakan fragmen hanyalah sebuah opsi dan akan menjadi refleks untuk mempertimbangkannya setelah Anda mulai menggunakannya.
Keuntungan:
1 / itu membantu untuk memodulasi kode di mana Anda dapat memiliki aliran penuh dalam satu Kegiatan, dalam fragmen yang terpisah. Contoh: + daftar / kisi & detail, + login & registrasi & lupa kata sandi, + dll. Ini luar biasa untuk mendapatkan kode yang dapat digunakan kembali, yang selalu dapat Anda salin & lewati di berbagai proyek.
2 / Anda memiliki siklus hidup baru, penuh dengan kerepotan itu benar, tetapi dengan kelebihan juga. Contoh: fragmen instance yang disimpan luar biasa karena memecahkan masalah orientasi.
3 / Anda dapat mengelola aliran fragmen Anda dengan acara dan pendengar dari Aktivitas.
4 / setumpuk fragmen Anda di Aktivitas Anda.
5 / gunakan bilah Tindakan yang sama di banyak layar.
Dan banyak lagi...
Saya masih menggunakan Kegiatan sebagai wadah saja kadang-kadang, terutama untuk kasing Kamera. Beberapa API Android dan beberapa perpustakaan pihak ketiga tidak mudah diimplementasikan dalam fragmen.
Ya, seperti alat apa pun, Anda harus mempertimbangkannya, dan menilai sendiri apakah lebih baik menggunakannya dalam suatu kasus atau lainnya.
Saya harap ini bisa membantu !!!
sumber