Membuat RecyclerView Sederhana Kotlin

Hafid Ali Mustaqim
3 min readJul 11, 2021

--

Recyclerview merupakan memudahkan menampilkan kumpulan data dalam jumlah besar secara efisien. dalam recylerview terdapat 2 elemen komponen utama yaitu Adapter dan ViewHolder.

Pada kesempatan kali ini kita akan membuat sebuah list sederhana menggunakan Recyclerview.

Langsung saja, buat project android studio baru.

Pada saat pemilihan template, pilih Basic Activity

setelah selesai membuat project, buka content_main.xml tambahkan recyclerview dan sesuaikan kode seperti berikut

<script src=”https://gist.github.com/hafidmust/960fa0da7d33513da10a269e6aaf3864.js"></script>

Buka MainActivity.kt

tambahkan kode berikut :

lateinit var listRecyclerView : RecyclerView

kemudian di metod onCreate

listRecyclerView = findViewById(R.id.lists_rv)
listRecyclerView.layoutManager = LinearLayoutManager(this)
listRecyclerView.adapter = ListSelectionRecyclerViewAdapter()

akan muncul error karena ListSelectionRecyclerViewAdapter() belum dibuat. oleh karena itu kita buat class baru bernama ListSelectionRecyclerViewAdapter

setelah itu buat class lagi bernama ListSelectionViewHolder tambahkan kode berikut :

class ListSelectionViewHolder(itemView : View) : RecyclerView.ViewHolder(itemView) {

}

buka file adapter yg sudah dibuat, kemudian extend ke viewholder seperti ini :

class ListSelectionRecyclerViewAdapter : RecyclerView.Adapter<ListSelectionViewHolder>() {
}

akan muncul error, tetapi tidak usah khawatir karena class adapter tadi belum kita implement membernya. caranya yaitu pada kode yg error alt + enter, implement member.

pilih semua item dengan menggunakan shift.

setelah itu kita buat data untuk menampilkan kedalam list. tambahkan kode berikut :

private val listTitle = arrayOf("Bitcoin","Ethereum","Dogecoin","USDT")

kemudian di method getItemCount() tambahkan kode berikut :

override fun getItemCount(): Int {
return listTitle.size
}

langkah selanjutnya yaitu membuat layout resource file bernama list_item.xml

<script src=”https://gist.github.com/hafidmust/03fc30a715188b67e09c103a491457e5.js"></script>

Buka ListSelectionRecyclerViewAdapter.kt tambahkan kode :

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ListSelectionViewHolder {
val view = LayoutInflater.from(parent.context).inflate(R.layout.list_item, parent,false)
return ListSelectionViewHolder(view)
}

kemudian buka ListSelectionViewHolder tambahkan kode berikut untuk membinding ke layout yg sudah dibuat.

val listPosition = itemView.findViewById<TextView>(R.id.itemNumber)
val listTitle = itemView.findViewById<TextView>(R.id.itemString)

dan yg terakhir yaitu buka ListSelectionRecyclerViewAdapter dan ubah method onBindViewHolder()

holder.listPosition.text = "${(position + 1)}. "
holder.listTitle.text = listTitle[position]

Jalankan aplikasi dengan Run App

Maka tampilan aplikasinya seperti ini :

--

--