# RecycleView Cell Adapter [Adapters][1] provide a binding from an app-specific data set to views that are displayed within a `RecyclerView`. [1]:https://developer.android.com/reference/kotlin/androidx/recyclerview/widget/RecyclerView.Adapter ```kotlin package import android.content.Context import android.util.Log import android.view.LayoutInflater import android.view.ViewGroup import android.widget.Button import android.widget.TextView import androidx.recyclerview.widget.RecyclerView class RecipeAdapter : RecyclerView.Adapter { private var mDataset: ArrayList // RecyclerView data class ViewHolder : RecyclerView.ViewHolder { var viewGroup: ViewGroup? = null constructor(v: ViewGroup?) : super(v!!) { viewGroup = v } } //adapter contructor, takes list of data constructor(myDataset: ArrayList/*, mContext: Context?*/){ mDataset = myDataset //mContenxt = mContext } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { val v : ViewGroup = LayoutInflater.from(parent.context).inflate(R.layout.view_recipe_item, parent, false) as ViewGroup val vh = ViewHolder(v) return vh } override fun getItemCount(): Int { return mDataset.size } override fun onBindViewHolder(holder: ViewHolder, position: Int) { val mItem : Recipe = mDataset.get(position) val titleText = holder.viewGroup?.findViewById(R.id.titleText) titleText?.text = mItem.title Log.d("Adapter","Title: "+mItem.title) val deleteButton = holder.viewGroup!!.findViewById