Michele Calzecchi Ответов: 1

Вычислите общее количество целых чисел в recyclerview


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

Это мой Таскадаптер:

<pre>public class TasksAdapter extends RecyclerView.Adapter<TasksAdapter.TasksViewHolder> {

    private Context mCtx;
    private List<Task> taskList;



    public TasksAdapter(Context mCtx, List<Task> taskList) {
        this.mCtx = mCtx;
        this.taskList = taskList;
    }



    @Override
    public TasksViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(mCtx).inflate(R.layout.recyclerview_tasks, parent, false);
        return new TasksViewHolder(view);
    }

    @Override
    public void onBindViewHolder(TasksViewHolder holder, int position) {
        Task t = taskList.get(position);
        holder.textViewData.setText("Data : "+t.getData());
        holder.textViewOraIn.setText("Ora Inizio : "+t.getOraIn());
        holder.textViewOraFin.setText("Ora Fine : "+t.getOraFin());
        holder.textViewLuogo.setText("Luogo : "+t.getLuogo());
        holder.textViewOreGiorn.setText("Ore giornaliere : "+String.valueOf(Integer.valueOf(t.getOraFin()) - Integer.valueOf(t.getOraIn())));
        holder.textViewKm.setText("Km : "+Integer.valueOf(t.getKm()));


    }



    @Override
    public int getItemCount() {
        return taskList.size();
    }

    class TasksViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        TextView textViewData, textViewOraIn, textViewOraFin, textViewLuogo, textViewOreGiorn, textViewKm;

        public TasksViewHolder(View itemView) {
            super(itemView);


            textViewData = itemView.findViewById(R.id.textViewData);
            textViewOraIn = itemView.findViewById(R.id.textViewOraIn);
            textViewOraFin = itemView.findViewById(R.id.textViewOraFin);
            textViewLuogo = itemView.findViewById(R.id.textViewLuogo);
            textViewOreGiorn = itemView.findViewById(R.id.textViewOreGiorn);
            textViewKm = itemView.findViewById(R.id.textViewKm);


            itemView.setOnClickListener(this);
        }



        @Override
        public void onClick(View view) {
            Task task = taskList.get(getAdapterPosition());

            Intent intent = new Intent(mCtx, UpdateTaskActivity.class);
            intent.putExtra("task", task);

            mCtx.startActivity(intent);
        }
        }
        }


Что я уже пробовал:

После некоторых исследований я попытался сделать это:
<pre>totale = 0;
        for (int i = 0; i < taskList.size(); i++) {
            totale += taskList.get(i).getOreGiorn();
        }

в onBindViewHolder, но когда я устанавливаю текст в TextView
holder.textViewOreTot.setText(String.valueOf(totale));

результат всегда равен нулю. В последнее время я изучаю Java / Android, и, вероятно, теряюсь в стакане воды

David Crow

Что именно это означает:

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

Один RecyclerView предназначен для отображения больших наборов данных.

1 Ответов

Рейтинг:
1

Michele Calzecchi

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


David Crow

Итак, этот вопрос закрыт с тех пор, как вы предоставили решение?

Michele Calzecchi

нет, я никогда не решал эту проблему