Ubah Cara Lama FindViewById dengan View Binding

Ilham Dwi Muchlison
RAION COMMUNITY
Published in
3 min readMar 24, 2021

Pengenalan View Binding

Apa itu View Binding? View Binding merupakan salah fitur untuk mempermudah mem-binding sebuah properti ke elemen. View Binding dapat memungkinkan anda untuk mempermudah menyambungkan tampilan daripada menggunakan FindViewById.

Sekali View Binding di aktifkan anda dapat langsung mengakses semua View yang terdapat di halaman xml dan anda tidak perlu lagi membinding secara eksplisit menggunakan FindViewById.

View Binding merupakan salah satu bagian dari salah satu library Android Jetpack yang di sarankan oleh Google untuk dipakai. View Binding di luncurkan pertama kali pada Android Studio 3.6.

View binding works with your existing XML, and will generate a binding object for each layout in a module.

Perbandingan View Binding dengan lainnya

Source : wajahatkarim.com

Kenapa menggunakan View Binding dari pada yang lainnya? Dapat dilihat pada gambar diatas bahwa penggunaan View Bindings memiliki kelebihan yang lebih baik dibandingkan dengan cara lainnya.

Beberapa kelebihan View Binding antara lain, sebagai berikut :

  1. Aman dari karena kesalahan pemanggilan variable null-safe
  2. Memberikan tipe komponen yang tepat,
  3. Boiler plate code yang rendah
  4. Build time Impact yang kencang
  5. Support Java dan Kotlin

Cara Menggunakan View Binding

Kita dapat langsung melihat cara penggunaan dari View Binding pada kode yang akan saya contohkan berikut :

Catatan: View binding tersedia di Android Studio 3.6 Canary 11+.

Untuk mengaktifkan View Binding silahkan tuliskan kode berikut pada build.gradle pada level module :

android {
...
buildFeatures {
viewBinding true
}
}

Setelah Project di Sinkronisasikan otomatis akan membuat kelas yang menampung semua id yang di dalam layout XML.

View Binding Pada Activity

Berikut contoh sederhana penerapan dari View Binding. Kita akan buat layout activity_main.xml terlebih dahulu

Setelah kita selesai membuat Layout, maka akan tergenerate sebuah class yang bernama ActivityMainBinding, nama itu berasal dari nama kelas yaitu activity_main.xml yang diubah menggunakan PascalCase.

Selanjutnya untuk menggunakan View Binding kita perlu untuk membuat object ViewBinding untuk menginflate Activity yang akan kita gunakan. ganti parameter pada setContentView dengan root dari View Binding seperti berikut:

Lalu didalam onCreate kita bisa memanggil semua View yang sudah kita deklarasikan pada activity_main.xml seperti berikut :

Photo by Possessed Photography on Unsplash

View Binding pada Fragment

Selain pada Activity kita juga dapat menggunakan View Binding pada Fragment, sebagai contoh kita akan membuat ContohFragment yang file layout bernama fragment_contoh.xml.

Ketika View Binding sudah diaktifkan pada gradle level modul maka akan otomatis tergenerate kelas bindingnya yaitu FragmentContohBinding. Kita akan menggunakan komponen yang sama persis dengan yang ada pada layout MainActivity sebelumnya dan hasilnya sebagai berikut :

Dapat kita lihat kita perlu untuk sedikit tricky dalam menggunakan View Binding pada Fragment, hal ini disebabkan pada fragment memiliki LifeCycle yang berbeda dengan Activity yang mengharuskan kita menuliskan terlebih dahulu onDestroy supaya tidak terjadi memori leak kedepannya ketika kita menutup fragmentnya.

Penutup

Sekian pembahasan dari saya tentang tentang View Binding dan Penerapannya. Terimakasih telah membaca. Semoga dengan penjelasan tips diatas, semakin mempermudah kamu dalam mengembangkan aplikasi. Selamat mencoba!! 😃

Sumber

https://developer.android.com/topic/libraries/view-binding

--

--