app/src/main/java/com/github/campus_capture/bootcamp/scoreboard/ScoreRecyclerViewAdapter.java
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;
}
}
}