Skip to content

Instantly share code, notes, and snippets.

holder.itemView.setOnClickListener {
// handle the click here if you need it
}
fun removeItems(myUpdatedList: List<Any>) {
this.dataParameters = ArrayList<Any>(myUpdatedList)
notifyDataSetChanged()
}
override fun getItemId(position: Int): Long {
return myList[position].hashCode().toLong()
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
val itemView: View
return if (viewType == CHILD_TYPE) {
itemView = LayoutInflater.from(parent.context).inflate(R.layout.child_type_layout, parent, false)
ListItemViewHolder(itemView)
} else {
itemView = LayoutInflater.from(parent.context).inflate(R.layout.section_type_layout, parent, false)
ListSectionViewHolder(itemView)
}
override fun getItemViewType(position: Int): Int {
return if (myList[position] is sectionObject) {
CHILD_TYPE
} else {
SECTION_TYPE
}
}
val myAdapter = MyAdapter(dataList)
myAdapter.setHasStableIds(true)
myRecyclerView.apply {
layoutManager = LinearLayoutManager(this)
adapter = myAdapter
adapter.notifyDataSetChanged()
}