Practice what you've learned so far to add more data into the rows of the RecyclerView, and then see a solution.
This is a companion discussion topic for the original entry at https://www.raywenderlich.com/4568-beginning-recyclerview/lessons/5
Practice what you've learned so far to add more data into the rows of the RecyclerView, and then see a solution.
Hello,
I would like to know what itβs the difference rendering a recycleView using in the adapter the RecyclerView.Adapter and use an extension of BaseAdapter.
For example in this code:
class MenuFoodAdapter : BaseAdapter {
var foodsList = ArrayList<Food>()
var context: Context? = null
constructor(context: Context, foodsList: ArrayList<Food>) : super() {
this.context = context
this.foodsList = foodsList
}
override fun getCount(): Int {
return foodsList.size
}
override fun getItem(position: Int): Any {
return foodsList[position]
}
override fun getItemId(position: Int): Long {
return position.toLong()
}
override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View {
val food = this.foodsList[position]
var inflator = context!!.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater
var foodView = inflator.inflate(R.layout.cell_menu_food, null)
foodView.cell_menu_food_photo_img.setImageResource(food.image!!)
foodView.cell_menu_food_name_lbl.text = food.name!!
foodView.cell_menu_food_price_lbl.text = food.price!!
return foodView
}
}
What method itβs recomended, why or when itβs better to use some of those?
Thank you
Thanks for the question, @diegorobh! BaseAdapter is meant to be used with UI elements like ListView and Spinner, while RecyclerView.Adapter is specifically designed to be the adapter for use with RecyclerView. The RecyclerView version enforces the ViewHolder pattern, which will give you better rendering performance in the list. Thanks again!