0
我创建了一个Trait来将所有常见的ViewHolder属性合并到一个地方。如何模仿scala特质中的构造函数参数?
trait MyHolder extends RecyclerView.ViewHolder {
def view: View = this.itemView
}
然后,我想用这种特质在我的课像这样:
case class MyItemHolder(override val view: View, items: Array[String]) extends MyHolder
不幸的是它给了我一个错误。
Not enough arguments for constructor ViewHolder: (x$1: android.view.View)android.support.v7.widget.RecyclerView.ViewHolder.
[error] Unspecified value parameter x$1.
[error] case class MyItemHolder(override val view: View, items: Array[String]) extends MyHolder
我可以得到它与这个类定义编译,但它似乎是多余的。
case class MyItemHolder(override val view: View, items: Array[String]) extends RecyclerView.ViewHolder(view) with MyHolder
我该如何摆脱RecyclerView.ViewHolder(view)
?