Представление Recycler getItemCount () возвращает 0, даже если в базе данных Room данные не равны NULL - PullRequest
0 голосов
/ 10 апреля 2020

Я использую Room Database и представление переработчика в моем приложении. Мне нужно получить общее количество элементов в адаптере. Но когда я вызываю метод adapter.getItemCount () из моей деятельности, он всегда возвращает 0, даже если список заполнен, и я могу просматривать элементы на экране. Вот метод в моем адаптере представления переработчика:

 private List<Books> mBooks;
    @Override
    public int getItemCount() {
        if (mBooks != null) {
          return mBooks.size();
        }
        else {return 0;}
    }

В моей деятельности:

booksRecyclerAdapter adapter=new booksRecyclerAdapter(this);
  recyclerView.setLayoutManager(new LinearLayoutManager(this));
                            recyclerView.setAdapter(adapter);

                            mBooksViewModel.getBooks().observe(this, new Observer<List<Books>>() {
                                @Override
                                public void onChanged(@Nullable final List<Books> entries) {
                                                      adapter.setBooks(entries);
                                }
                            });

int numberOfBooks=adapter.getItemCount();// this always retund 0 even if data is not null.

Любая помощь высоко ценится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...