app/app/src/main/java/com/danilafe/fencelessgrazing/CollarSummaryAdapter.kt

42 lines
1.5 KiB
Kotlin

package com.danilafe.fencelessgrazing
import android.content.Context
import android.view.LayoutInflater
import android.view.ViewGroup
import android.widget.Toast
import androidx.recyclerview.widget.ListAdapter
import androidx.recyclerview.widget.DiffUtil
import com.android.volley.Response
import com.android.volley.toolbox.Volley
import com.danilafe.fencelessgrazing.model.CollarSummary
import com.danilafe.fencelessgrazing.requests.CollarRequest
class CollarSummaryAdapter(
private val items : List<CollarSummary>
) : ListAdapter<CollarSummary, CollarViewHolder>(DiffCallback()) {
class DiffCallback : DiffUtil.ItemCallback<CollarSummary>() {
override fun areItemsTheSame(oldItem: CollarSummary, newItem: CollarSummary): Boolean
= oldItem.id == newItem.id
override fun areContentsTheSame(oldItem: CollarSummary, newItem: CollarSummary): Boolean
= oldItem == newItem
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CollarViewHolder {
val layout = LayoutInflater.from(parent.context).inflate(viewType, parent, false)
return CollarViewHolder(layout)
}
override fun onBindViewHolder(holder: CollarViewHolder, position: Int) {
holder.bindData(getItem(position))
}
override fun getItemViewType(position: Int): Int = R.layout.collar_summary_layout
override fun getItem(position: Int): CollarSummary = items[position]
override fun getItemCount(): Int = items.size
}