Я подозреваю, что сообщение об ошибке на самом деле:
Required Iterable<ProductData>, Found List<ProductData>?
Знак вопроса в конце не просто пунктуация.Это обнуляемый индикатор в Котлине.List<ProductData>
не может быть null
, но List<ProductData>?
может.И я считаю, что для addAll()
требуется не null
значение.
В идеале вы должны изменить ProductView
так, чтобы подпись для showProduct()
была fun showProduct(products: List<ProductData>)
.
В качестве альтернативы, вы можете переписать showProduct()
так:
override fun showProduct(products: List<ProductData>?) {
if (products?.size != 0){
this.productList.clear()
products?.let { this.productList.addAll(it) }
productAdapter.notifyDataSetChanged()
}
}