Copy data class DogBreed(
val breedId: String?,
val dogBreed: String?,
val lifeSpan: String?,
val breedGroup: String?,
val bredFor: String?,
val temperament: String?,
val imageUrl: String?
)
2. 自行新增一個Adapter
4. 把onCreateViewHolder(),getItemCount(),onBindViewHolder()都實作完
Copy // 2.再implement Adapter<ViewHolder>
class DogsListAdapter(val dogList: ArrayList<DogBreed>) : RecyclerView.Adapter<DogsListAdapter.DogViewHolder> (){
//1.一樣先寫ViewHolder
class DogViewHolder(var view : View) : RecyclerView.ViewHolder(view)
//3.實作
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): DogViewHolder {
val inflater:LayoutInflater = LayoutInflater.from(parent.context)
val view = inflater.inflate(R.layout.item_dog, parent, false)
return DogViewHolder(view)
}
override fun getItemCount() = dogList.size
override fun onBindViewHolder(holder: DogViewHolder, position: Int) {
holder.view.name.text = dogList[position].dogBreed
holder.view.lifespan.text = dogList[position].lifeSpan
};
fun updateDogList(newDogsList : List<DogBreed>)
{
dogList.clear();
dogList.addAll(newDogsList)
notifyDataSetChanged()
}
}