RecycleView添加item点击事件(821)

2018-08-10  本文已影响0人  Qin0821

参考原文

定义点击事件接口

在RecycleViewAdapter的基类中定义点击事件接口。

abstract class BaseRecycleViewAdapter: RecyclerView.Adapter<RecyclerView.ViewHolder>() {

    interface OnItemClickListener {
        fun setOnItemClickListener(position: Int) {

        }
    }

}

实现监听

lateinit var listener: OnItemClickListener
···
// 暴露监听方法供外界调用
fun setOnItemClickListener(listener: OnItemClickListener) {
    this.listener = listener
}
···
// 在`onBindViewHolder`中对Item监听
holder.itemView.setOnClickListener {
    listener.setOnItemClickListener(position)
}

外界调用

adapter.setOnItemClickListener(object : BaseRecycleViewAdapter.OnItemClickListener {
                override fun setOnItemClickListener(position: Int) {
          // do something
    }
})
上一篇 下一篇

猜你喜欢

热点阅读