В моем приложении реализован RecyclerView. Я хочу изменить, добавить и удалить элементы удаленно с notifyItemRemoved и notifyItemChanged, а не с setDataChange из-за разницы в производительности. я хочу сделать некоторые объекты интерфейса, я думаю, но я не мог понять, как или где реализовать и переопределить метод inteface, т. д.
это моя реализация RecyclerView в MainActivity.kt
val linearLayoutManager = LinearLayoutManager(this)
recyclerView.layoutManager = linearLayoutManager
adapter = RecyclerAdapter(itemList)
recyclerView.adapter = adapter
это мой интерфейс:
public interface AddItemListener {
void addItem(int position);
}
и это мой класс RecyclerView с его ViewHolder:
class RecyclerAdapter(val items: ArrayList<RecyclerViewListModel>) :
RecyclerView.Adapter<RecyclerAdapter.MyViewHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int) =
MyViewHolder(LayoutInflater.from(parent.context).inflate(R.layout.item_recycler_view, parent, false))
override fun getItemCount(): Int = items.size
override fun onBindViewHolder(holder: MyViewHolder, position: Int) {
holder.onBind()
}
inner class MyViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
fun onBind(){}
}
}
У меня есть Плавающая кнопка в MainActivity. Я хочу иметь доступ к Viewholder для добавления элемента. заранее спасибо!