Spinner не выбирает элемент после того, как представление переработчика становится недействительным - PullRequest
0 голосов
/ 12 июня 2019

У меня добавлен счетчик в виде recycler.

Когда пользователь обновляет / добавляет что-либо в корзину, я обновляю список массивов, удаляю старые данные, добавляю новые данные в recyclerview и вызываю недействительные вызовы,как только я делаю invalidate на recyclerview, вращатель в recyclerview перестает работать и ничего не делает при смене элементов.

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

this.data = cartDataContainer.getCartList();
cartRecyclerView.removeData(); //this set list to null
cartRecyclerView.setData(cartData, sectionActivity.getCartPricesArrayList());
cartRecyclerView.notifyDataSetChanged();

И в моем recyclerview я делаю следующее, чтобы использовать spinner.

   public static class ViewHolder extends RecyclerView.ViewHolder{
     private Spinner spinnerCart;

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

     spinnerCart= itemView.findViewById(R.id.spinnerCart);

    }
}

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

  holder.tvPrice.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                    holder.spinnerCart.performClick();
                }
            }
        });

Теперь следующий обратный вызов не вызывается.Впервые он работает нормально, но как только я лишаю законной силы обзор переработчика с новыми данными, спиннер перестает работать.

 holder.spinnerCart.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        int count=0;

        @Override
        public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {

            if(count >= 1) {

            }count++;
        }

        @Override
        public void onNothingSelected(AdapterView<?> adapterView) {

        }
    });
...