package it.unisannio.ding.ids.wedroid.app.view.adapter import android.content.Context import android.content.Intent import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.TextView import androidx.recyclerview.widget.RecyclerView import it.unisannio.ding.ids.wedroid.app.R import it.unisannio.ding.ids.wedroid.app.data.entity.Board import it.unisannio.ding.ids.wedroid.app.view.BoardViewActivity class BoardsListAdapter internal constructor( context: Context ) : RecyclerView.Adapter() { private val inflater = LayoutInflater.from(context) private var boards = emptyList() inner class BoardViewHolder( view: View ) : RecyclerView.ViewHolder(view) { val boardTitle: TextView = view.findViewById(R.id.boardTitle) } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BoardViewHolder { val view = inflater.inflate(R.layout.board_recycle_item, parent, false) return BoardViewHolder(view) } override fun getItemCount(): Int { return boards.size } override fun onBindViewHolder(holder: BoardViewHolder, position: Int) { val board = boards[position] holder.boardTitle.text = board.title holder.itemView.setOnClickListener { val intent = Intent(it.context, BoardViewActivity::class.java) intent.putExtra("idBoard", board.id) it.context.startActivity(intent) } } internal fun setBoards(boards: List) { this.boards = boards notifyDataSetChanged() } companion object { const val BOARD_ID = "BOARD_ID" } }