RecyclerView не пустой при использовании с привязкой данных - PullRequest
0 голосов
/ 13 мая 2019

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

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

Ниже приведен класс адаптера

public class ParticipantsAdapter extends RecyclerView.Adapter<ParticipantsAdapter.ParticipantsViewHolder> {

    ArrayList nameList,iconList;


    public ParticipantsAdapter(ArrayList name, ArrayList iconList) {

        this.nameList = name;
        this.iconList = iconList;
    }

    @NonNull
    @Override
    public ParticipantsAdapter.ParticipantsViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {


        ParticpantItemBinding binding = DataBindingUtil.inflate(LayoutInflater.from(viewGroup.getContext()),R.layout.particpant_item,null,false);
        return new ParticipantsViewHolder(binding);
    }

    @Override
    public void onBindViewHolder(@NonNull 
         ParticipantsAdapter.ParticipantsViewHolder participantsViewHolder, int i) {

          participantsViewHolder.bindTo(i);
    }

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

    class ParticipantsViewHolder extends RecyclerView.ViewHolder {
        private ParticpantItemBinding binding;
        TextView name;
        ImageView icon;

        public ParticipantsViewHolder(ParticpantItemBinding view) {
            super(view.getRoot());
            this.binding = view;
            this.binding.executePendingBindings();

        }

        private void bindTo(int pos) {
            binding.tvName.setText(nameList.get(pos)+"");
            binding.ivAvtar.setImageResource((int)iconList.get(pos));
            binding.executePendingBindings();
        }
    }
...