Selamat datang kembali.
Mari kita lanjutkan dengan lapisan tampilan arsitektur Mvvm.
Dan dalam video ini, kita akan menampilkan semua data, semua kontak yang diterima dari database ruangan ke dalam tampilan
pendaur ulang aktivitas utama.
Untuk itu, saya perlu mendefinisikan data, sumber, adaptor, dan objek pengikat.
Dimulai dengan sumber data.
Saya perlu membuat objek database kontak bernama database kontak dan saya akan membuat daftar array
objek kontak.
Di sini saya perlu membuat objek dari kelas adapter private my adapter dan di sini saya perlu membuat objek untuk pengikatan
data.
Saya memiliki dua variabel, satu untuk pengikatan utama aktivitas, pengikatan utama, dan satu lagi untuk penangan klik yang telah
kita buat sebelum aktivitas utama penangan klik.
Dan ini adalah kelas yang telah kita buat sebelumnya yang menangani peristiwa klik pada tombol Fab Floating Action.
Mari kita inisialisasi di sini dalam metode Oncreate.
Pengikatan utama sama dengan pengikatan data util dot Setcontentview ini dan meneruskan tata letak dot aktivitas dot pengikatan data utama util dot
Setcontentview adalah metode yang disediakan oleh pustaka pengikatan data Android yang memungkinkan Anda untuk
mengatur tampilan konten aktivitas atau fragmen dengan pengikatan data yang diaktifkan.
Ini menyederhanakan proses penggunaan pengikatan data untuk mengikat elemen UI ke sumber data dalam file XML tata letak
Anda.
Kemudian saya perlu menginisialisasi penanganannya sama dengan penangan aktivitas utama yang baru dan saya akan meneruskannya sebagai konteks.
Kemudian saya perlu menautkan penangan klik set titik pengikatan aktivitas utama ke penangan.
Jadi, di sini saya menautkan penangan klik aktivitas utama ini ke pengikatan aktivitas utama.
Mari kita beralih ke inisialisasi tampilan pendaur ulang kita dan mendefinisikan pengelola tata letak untuknya.
Tampilan Pendaur Ulang Tampilan Pendaur Ulang sama dengan aktivitas Pendaur ulang titik pengikatan utama Tampilan Pendaur Ulang Tampilan Pendaur Ulang Tampilan Pengaturan
Tata Letak.
Manajer tata letak linier baru yang melewati ini dan set titik tampilan pendaur ulang memiliki ukuran tetap ke true.
Pada baris ini, saya mendapatkan referensi ke widget tampilan pendaur ulang dari tata letak yang menggunakan pengikatan data di
Android.
Ini disebut pengikatan utama, jadi ini adalah objek yang menggunakan dan merujuk ke aktivitas ini.
Garisbawahi utama.
Dan saya akan menggunakan referensi untuk tampilan pendaur ulang yang disebut tampilan pendaur ulang di sini.
Jadi, baris ini digunakan untuk mendapatkan referensi ke widget tampilan pendaur ulang dari tata letak yang menggunakan pengikatan data
di Android.
Referensi ini memungkinkan Anda untuk berinteraksi dan memanipulasi tampilan pendaur ulang secara terprogram dalam
kode aplikasi Android Anda menggunakan pustaka pengikatan data.
Kemudian mari kita pindah untuk membuat adaptor yang sama dengan adaptor saya yang baru dan saya akan meneruskan kontak sebagai daftar array.
Mari kita pindah ke database kontak database sama dengan database kontak dot get instance dan saya perlu mengoper
konteks get instance.
Seperti yang saya katakan sebelumnya di database kontak, ini akan mengembalikan satu contoh database kontak karena kita
mengikuti pola tunggal.
Kalau begitu, saya harus menggunakan model view.
Jadi saya akan membuat instance ViewModel.
ViewModel Penyedia ViewModel baru dot ini mendapatkan kelas dot model view saya.
Jadi, baris kode ini digunakan untuk mendapatkan, membuat, dan mengambil sebuah instance dari ViewModel yang terkait dengan aktivitas
atau fragmen tertentu.
Mari kita uraikan.
ViewModel Provider adalah kelas yang disediakan oleh komponen arsitektur ViewModel Android.
Ini digunakan untuk membuat dan mengelola model tampilan dalam lingkup aktivitas atau fragmen.
Kata kunci ini biasanya merujuk pada aktivitas atau fragmen yang sedang berjalan dalam konteks kode Anda.
Ini diteruskan sebagai argumen ke penyedia model tampilan.
Ini menandakan bahwa Anda ingin membuat atau mengambil ViewModel yang terkait dengan aktivitas atau fragmen saat
ini.
Metode get dari ViewModel Provider dipanggil dengan kelas ViewModel yang Anda inginkan.
Metode ini bertanggung jawab untuk membuat instance baru ViewModel jika belum ada atau mengembalikan
instance yang sudah ada.
Jika ya, maka saya akan menyisipkan kontak baru hanya untuk pengujian.
Nanti kita akan membuat aktivitas baru yang seperti itu.
Bertanggung jawab untuk membuat dan memasukkan kontak baru ke dalam database.
Saya akan mulai dengan kontak.
Kontak baru.
ID akan menjadi satu.
Ini tidak penting karena database.
Basis data akan secara otomatis menghasilkan kunci utama.
Maka namanya adalah Jack dan emailnya adalah Jack at gmail. com.
Saya perlu memasukkannya ke dalam basis data kita, jadi saya akan menggunakan model view dot add new contact.
Anda bisa melihat, bahwa saya berurusan dengan model tampilan.
Saya tidak berurusan langsung dengan basis data, saya berurusan dengan model tampilan dan model tampilan akan berurusan
dengan repositori dan repositori akan berurusan dengan basis data ruangan.
Beginilah cara kerja arsitektur Mvvm.
Kemudian saya perlu menggunakan adaptor dot set tampilan pendaur ulang yang menghubungkan adaptor dengan adaptor tampilan pendaur
ulang dan sebelum menautkan tampilan pendaur ulang, saya perlu memuat data dari database.
Yang perlu saya lakukan adalah.
Melihat titik model.
Dapatkan semua kontak.
Kemudian saya perlu menggunakan metode observe dan metode observe digunakan untuk mengamati atau mendengarkan perubahan
pada data dasar yang dimiliki oleh objek data langsung.
Anda menggunakan metode observe pada objek data langsung dan mengoper pengamat yang telah Anda buat.
Metode Observe menetapkan koneksi antara data langsung dan pengamat.
Ini memberi tahu data langsung untuk memberi tahu pengamat ketika data berubah.
Saya harus memberikan dua parameter, satu untuk pemilik dan satu lagi untuk pengamat.
Jadi saya menghubungkan Observer di sini dengan observe, dan saya akan menimpa metode on changed, dan objek
observer mendefinisikan perilaku yang akan dieksekusi ketika data langsung pengguna berubah.
Dalam hal ini, ini bereaksi terhadap perubahan dalam data konteks.
Saya akan menggunakan perulangan for untuk setiap perulangan yang bertipe konteks.
Lihat di dalam daftar susunan kontak.
Pertama-tama saya akan memasukkannya ke dalam logcat dan kemudian menampilkannya ke dalam tampilan pendaur ulang.
Jadi untuk itu saya akan membuat tag log dot v dan c dot get name.
Saya akan menampilkan semua nama kontak dalam database saya.
Mari jalankan aplikasi ini dan uji kode kita.