我刚开始用Kotlin进行编码。我的问题是我无法将项目Click侦听器分配给我的recyclerview。我已经花了几天的时间,没有钢。我试图使用这种方法: https://gist.github.com/arcadefire/1e3a95314fdbdd78fb211b099d6ec9da 我添加了代码,但是单击recyclerview项时没有任何反应。 任何帮助都将得到解决 这是 这是我使用过的代码,无法正常工作:
interface OnItemClickListener {
fun onItemClicked(position: Int, view: View)
}
fun RecyclerView.addOnItemClickListener(onClickListener: OnItemClickListener) {
this.addOnChildAttachStateChangeListener(object: RecyclerView.OnChildAttachStateChangeListener {
override fun onChildViewDetachedFromWindow(view: View?) {
view?.setOnClickListener(null)
}
override fun onChildViewAttachedToWindow(view: View?) {
view?.setOnClickListener({
val holder = getChildViewHolder(view)
onClickListener.onItemClicked(holder.adapterPosition, view)
})
}
})
}
// Usage:
recyclerView.addOnItemClickListener(object: OnItemClickListener {
override fun onItemClicked(position: Int, view: View) {
// Your logic
}
})