Sobes.tech
Junior — Middle

Ի՞նչ ֆունկցիաներ պետք է վերագրենք Adapter դասում, որպեսզի այն ճիշտ աշխատի RecyclerView- ի հետ։

sobes.tech AI

Պատասխան AI-ից

Կարևոր է, որ adapter-ը ճիշտ աշխատի RecyclerView-ի հետ, անհրաժեշտ է վերագրել հետևյալ մեթոդները:

  1. onCreateViewHolder(ViewGroup parent, int viewType) — ստեղծում է նոր ViewHolder և սկսում է ցուցակի տարրերի ձևավորումը:
  2. onBindViewHolder(ViewHolder holder, int position) — կապում է տվյալները ցուցակի տարրերի հետ, թարմացնելով ViewHolder-ի պարունակությունը:
  3. getItemCount() — վերադարձնում է ադապտերի մեջ գտնվող տարրերի քանակը:

Օրինակ Kotlin-ում:

class MyAdapter(private val items: List<String>) : RecyclerView.Adapter<MyAdapter.MyViewHolder>() {

    class MyViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
        val textView: TextView = itemView.findViewById(R.id.textView)
    }

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MyViewHolder {
        val view = LayoutInflater.from(parent.context).inflate(R.layout.item_layout, parent, false)
        return MyViewHolder(view)
    }

    override fun onBindViewHolder(holder: MyViewHolder, position: Int) {
        holder.textView.text = items[position]
    }

    override fun getItemCount(): Int = items.size
}