Рассчитать сумму двойных значений в представлении реселлера - PullRequest
0 голосов
/ 02 июня 2018

Как я могу суммировать Recyclerview значений каждого текстового представления строки и установить в промежуточный итог?Ниже приведен скриншот.

Как узнать значения всех значений textview для адаптера утилит в режиме просмотра в массиве?

enter image description here

Ответы [ 3 ]

0 голосов
/ 11 июня 2018

Во-первых, наличие текста с данными означает, что у вас уже есть значения, и все, что вам нужно, это путь к ним.Есть два способа получить значения:


  1. Использовать данные, которые у вас уже есть

Это простой способ.Предполагая, что у вас есть список элементов, которые уже отображаются на экране, вы можете получить их все с помощью цикла.

int total = 0;
for(int i = 0; i < items.size; i++){
    total = total + items.get(i).price()
}

Доступ к recyclerview значению

Это также потребует от вас выполнения цикла доступа к ViewHolder из recyclerview

int total = 0;
for(int i = 0; i < adapter.getItemCount(); i++){
    TextView text = ((TextView) recyclerView.findViewHolderForAdapterPosition(i)
            .itemView.findViewById(R.id.memeView));
    total = total + Integer.parseInt(text.getText().toString());
}
0 голосов
/ 12 июня 2018

Я думаю, что ваш промежуточный итог должен рассчитываться вашим модулем данных, а RecyclerView только отображает ваши данные или изменяет данные вашего модуля.

0 голосов
/ 09 июня 2018
float sum = 0;
Model mymodel;
ArrayList<Model> objects;

 public Constructor(Context context, int resource, ArrayList<Model> objects)
    {
        this.context = context;
        this.resource = resource;
        this.objects = objects;
    }

@Override
public void onBindViewHolder(Holder holder, int position)
    {
         mymodel = objects.get(position);

         sum = sum + list.getItem(i).getPrice();
         holder.subTotal.setText(sum);
   }
...