我刚刚开始使用 Kotlin 学习 Android 开发。
我有一个列出项目的回收站 View 。
我正在尝试为项目创建 onClick 事件,然后启动一个新的 Intent 并传递项目 ID。
尝试实例化 Intent 时出现错误“无法使用提供的参数调用以下函数”。我认为这是因为我无法访问 View 的上下文?
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
holder.id = events[position][0]
holder.title.text = events[position][1]
if (events[position][2] == events[position][3]) {
holder.date.text = events[position][2]
} else {
holder.date.text = events[position][2] + " - " + events[position][3]
}
holder.itemView.setOnClickListener {
v: View -> Unit
Log.d(TAG, "onItemClick for ID: " + holder.id)
val intent = Intent(this, EventDetail::class.java)
intent.putExtra("id", holder.id)
startActivity(intent)
}
}
最佳答案
这在 Kotlin 中属于 OnBindviewholder '
holder.itemView.setOnClickListener { v ->
val intent = Intent(v.context, QuestionsActi::class.java)
v.context.startActivity(intent)
}
'
关于Android Kotlin 对回收站 View 中点击事件的新 Intent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59012821/