我已经继承了旧的Kotlin代码库,并试图用最新的编译器进行编译时遇到了许多问题。我遇到麻烦的一个就是这些奇怪的功能,在课堂中间闲逛,没有任何明显的呼叫。我想知道是否有人知道这个曾经是什么,以及它在新版本的Kotlin中取代了什么?使用Kotlin编译时的函数声明错误12
public class SomeAdapter(val friends: SomeAdapterProvider, val listener: OnItemClickedListener) : RecyclerView.Adapter<SomeAdapter.ViewHolder>() {
trait OnItemClickedListener {
fun onItemClicked(f: Friendship)
}
private inner class ViewHolder(v: View) : RecyclerView.ViewHolder(v), View.OnClickListener {
override fun onClick(v: View) {
listener.onItemClicked(somethings[getPosition()])
}
val text: TextView by inject(android.R.id.text1)
val image: Picture by inject(R.id.imageview);
{
itemView setOnClickListener this
}
}
{
setHasStableIds(true)
}
}
具体地说,所讨论的行是itemView setOnClickListener this
和setHasStableIds(true)
,二者在其之间括号只是挂。
这里是你的代码的固定版本(如@ D3xter以下建议):https://gist.github.com/abreslav/176c69cd809d79e96c71 –
固定的版本应豆回答,而没有外部链接,内容可能会消失或移动。我在下面添加它作为参考。 –