正在添加RecyclerView项目总计

时间:2019-01-06 02:52:40

标签: android android-fragments kotlin android-recyclerview

在我的项目中,我有一个包含适配器和片段类的recyclerview。一切都按预期工作,我正在尝试对特定的列值求和并将其显示在文本字段中。我尝试了以下总方法,但无法正常工作。任何帮助表示赞赏。

使用的语言

Kotlin

使用的代码

适配器类

   override fun onBindViewHolder(holder: ViewHolder, position: Int)
    {
        holder.bindcar(list[position],fragment)

    }
    fun bindcar(Test: TestCart?, fragment: TestFragment)=with(carView)
        {
            TestName.text=Test?.carName
            TestQuantity.text= Test?.carQuantity.toString()
            TestPrice.text= Test?.carPrice!!.toString()
        }

片段

for (c in carList!!.iterator())
    {
            val car=TestCart()

            //var carPrice=0
            car.carName=c.carName
            car.carQuantity=c.carQuantity
            car.carPrice=c.carPrice
           // car.carPrice= c.carPrice!! +Price
            carListcars!!.add(car)
    }
    adapter!!.notifyDataSetChanged()
    }

期望

Total CarPrice in the Recycler View.

1 个答案:

答案 0 :(得分:0)

您可以使用Kotlin List的sumBy方法来做到这一点。

在您的片段类中添加以下代码

for (c in carList!!.iterator())
  {
      val car=TestCart()

            //var carPrice=0
            car.carName=c.carName
            car.carQuantity=c.carQuantity
            car.carPrice=c.carPrice
           // car.carPrice= c.carPrice!! +Price
            carListcars!!.add(car)
    }

    adapter!!.notifyDataSetChanged()

    // sumby code 
    var totalAmount: Int = carListcars.sumBy{ it.carPrice }

    // setting your textView
    TestPrice.text = totalAmount.toString()


    }