类型不匹配。必需:MutableList <out expandablegroup <parcelable =“” >>

时间:2019-05-31 04:52:24

标签: android kotlin parcelable expandablerecyclerview

我正在尝试进行expandale recyclerview,并且使用thoughtbot / expandable-recycler-view,但是适配器存在问题。也许有人遇到类似的问题,可以帮助我解决这个问题
1)我的父母班级的代码

Java

2)子类(这里我使用了parcelize。但是现在我使用了:Parcelable)

/****** parent ******/
class Item(title: String?, items: MutableList<ItemDetail>?) : 
ExpandableGroup<ItemDetail>(title, items)

3)片段-适配器

 // @Parcelize
 // data class ItemDetail(
 // var i_size: String,
 // var i_qty: Int
 //): Parcelable
 class ItemDetail (val i_size: String, val i_qty: Int): Parcelable{
    constructor(parcel: Parcel):this(
     parcel.readString(),
     parcel.readInt()){

   }

   override fun writeToParcel(parcel: Parcel, flags: Int) {
      parcel.writeString(i_size)
      parcel.writeInt(i_qty)
   }

   override fun describeContents(): Int {
     return 0
    }

  companion object CREATOR : Parcelable.Creator<ItemDetail> {
     override fun createFromParcel(parcel: Parcel): ItemDetail {
       return ItemDetail(parcel)
     }

     override fun newArray(size: Int): Array<ItemDetail?> {
      return arrayOfNulls(size)
     }
 }
 }

2 个答案:

答案 0 :(得分:0)

我相信您的Item类也应该是可包裹的。

答案 1 :(得分:0)

已解决。刚刚更改

CartAdapter(groups: MutableList<out ExpandableGroup<Parcelable>>?)

CartAdapter(groups: List<out ExpandableGroup<*>>)