Campus-Capture/campus-capture

View on GitHub
app/src/main/java/com/github/campus_capture/bootcamp/scoreboard/ScoreRecyclerViewAdapter.java

Summary

Maintainability
A
0 mins
Test Coverage
A
100%
package com.github.campus_capture.bootcamp.scoreboard;

import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;

import android.annotation.SuppressLint;
import android.view.LayoutInflater;
import android.view.ViewGroup;
import android.widget.TextView;

import com.github.campus_capture.bootcamp.databinding.FragmentScoreItemBinding;

import java.util.List;

/**
 * {@link RecyclerView.Adapter} that can display a {@link ScoreItem}.
 */
public class ScoreRecyclerViewAdapter extends RecyclerView.Adapter<ScoreRecyclerViewAdapter.ViewHolder> {

    private final List<ScoreItem> mValues;

    public ScoreRecyclerViewAdapter(List<ScoreItem> items) {
        mValues = items;
    }

    @NonNull
    @Override
    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        return new ViewHolder(FragmentScoreItemBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false));

    }

    @SuppressLint("SetTextI18n")
    @Override
    public void onBindViewHolder(final ViewHolder holder, int position) {
        holder.mItem = mValues.get(position);
        holder.mIdView.setText(mValues.get(position).getLabel());
        holder.mContentView.setText(Integer.toString(mValues.get(position).getValue()));
    }

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

    public static class ViewHolder extends RecyclerView.ViewHolder {
        public final TextView mIdView;
        public final TextView mContentView;
        public ScoreItem mItem;

        public ViewHolder(FragmentScoreItemBinding binding) {
            super(binding.getRoot());
            mIdView = binding.itemNumber;
            mContentView = binding.content;
        }
    }
}