Belajar Fragment Android Studio

Fragment Android Studio

Setelah sebelumnya pada post tentang belajar android studio pemula kali ini kita akan melanjutkannya yaitu belajar Fragment Android Studio, berikut adalah penjelasan singkat tentang Fragment pada Android Studio.

Apa itu Fragment? Fragment merupakan class yang bersifat reuseable yang mana dapat di gunakan secara berulang-ulang, dan juga memiliki beberapa fitur yang sama dengan Activity. Fragment diharuskan berada dalam sebuah Activity untuk bisa digunakan, dengan menggunakan Fragment kita dapat berganti tampilan tanpa harus berpindah dari satu Activity ke Activity lain.

Class Fragment memiliki kode yang mirip seperti Activity. Class ini memiliki metode callback yang serupa dengan Activity, seperti onCreate(), onStart(), onPause(), dan onStop(). Pada contoh latihan kita akan menggunakan beberapa metode lain yaitu OnCreateView() dan OnViewCreated().

Pada artikel kali ini kita akan belajar cara menggunakan Fragment pada Android Studio, seperti cara menambahkan Fragment pada Activity, mengirim data antar Fragment, dan perpindahan antar Fragment.

Latihan Fragment

belajar fragment android studio

Fragment Pada Activity

 

belajar fragment android studio

Buka Android Studio kalian, disini saya menggunakan Android Studio versi 4.2.1 lalu buat satu project baru (Empty Activity) seperti biasa dengan nama Latihan Fragment, min sdk 21 dan bahasa kotlin, kemudian sesuaikan activity_main.xml dan MainActivity.kt nya jika ada error abaikan terlebih dahulu, lalu tambahkan 3 Fragment baru dengan cara click kanan > new > Fragment > Blank Fragment pada MainActivity di bagian kiri.

Nama Fragment yang kita buat adalah OneFragment, TwoFragment dan DetailFragment, setelah selesai sesuaikan juga kode pada class nya dan layoutnya, jika semua sudah seharusnya aplikasi siap untuk dijalankan.

Penjelasan

Sampai sini cukup mudah bukan latihan Belajar Fragment Android Studio kali ini? untuk lebih memahami tentang apa maksud dari kode-kode yang sudah kita tulis diatas silahkan cermati penjelasannya dibawah ini.

FrameLayout

Untuk menampilkan pada sebuah Activity kita memerlukan komponen FrameLayout yang memiliki sifat menumpuk komponen yang berada diatasnya.

OnCreateView

return inflater.inflate(R.layout.fragment_detail, container, false)
Pada setiap class Fragment yang kita buat tadi memiliki metode OnCreateView yang memiliki fungsi untuk menentukan file Layout mana yang akan digunakan pada Fragment tersebut.

OnViewCreated

tvDetail = view.findViewById(R.id.tv_detail)
Metode OnViewCreated adalah tempat dimana kita akan melakukan inisialisasi komponen view, perlu diperhatikan untuk menginisialisasi pada Fragment diharusnya menulisnya view terlebih dahulu sebelum findViewById.

Fragment Transaction

val mFragmentManager = supportFragmentManager
val oneFragment = OneFragment()
val fragment = mFragmentManager.findFragmentByTag(OneFragment::class.java.simpleName)
if (fragment !is OneFragment) {
mFragmentManager
.beginTransaction()
.add(R.id.frame_layout, oneFragment, OneFragment::class.java.simpleName)
.commit()
}

Kode diatas terletak pada MainActivity dalam metode onCreate, yang mana berfungsi untuk menambahkan Fragment pada FrameLayout pada saat Activity berhasil di buat,

if (v?.id == R.id.btn_fragment) {
val mCategoryFragment = TwoFragment()
val mFragmentManager = supportFragmentManager
mFragmentManager.beginTransaction().apply {
replace(R.id.frame_layout, mCategoryFragment, TwoFragment::class.java.simpleName)
addToBackStack(null)
commit()
}
}

Sedangkan kode pada onClick sedikit berda, bukan fungsi add seperti di onCreate melaikan replace karna pada saat diklik kita ingin mengganti tampilan Fragmentnya.

val mBundle = Bundle()
mBundle.putString(DetailFragment.TITLE_EXTRA, "Fragment Android Studio")
val description = "Tutorial by surgatutorial.com"
detailFragment.arguments = mBundle
detailFragment.description = description

Untuk melakukan pengiriman data pada Fragment kita menggunakan Bundle pada TITLE_EXTRA sedangkan DESC_EXTRA kita menggunakan setter dan getter.

Sekian tutorial tentang belajar Fragment Android Studio, silahkan klik tautan Fragment Android Studio berikut jika ingin lebih dalam mempelajarinya. Selanjutnya kita akan mempelajari tentang RecyclerView Android Studio yuk menuju ke TKP.