Проблема, с которой я сталкиваюсь, заключается в том, что в окне рециркуляции отображается не весь список товаров В моем конкретном случае у меня 38 предметов, и некоторые из них отсутствуют. У меня было 34, и это работало просто отлично. У меня есть панель поиска, и когда я набираю идентификаторы пропущенных элементов, она показывает их. Я не могу найти, где проблема может быть. Любые предложения о том, что искать или изменения, которые я мог бы сделать, очень приветствуются. Не стесняйтесь спрашивать любой код, который, по вашему мнению, необходим.
Так я называю адаптер
public void buildCollectionSalesAdapter(){
final String filter = edtFindSale.getText().toString().trim();
final SaleHeader saleHeaderModel = new SaleHeader();
List<SaleHeader> saleHeaderList1 = new SaleHeader().getSaleHeadersAll();
int limit = saleHeaderList1.size();
saleHeaderList = saleHeaderModel.getSaleHeaderCollectPagination(limit, 0, filter,
config.showVerified, config.allCustomers);
final SalesAdapter salesAdapter = new SalesAdapter(saleHeaderList, null, context,
CollectionFragment.this, null, getActivity());
rcvCollection.setAdapter(salesAdapter);
registerForContextMenu(rcvCollection);
rcvCollection.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
}
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy)
{
if(dy > 0) //check for scroll down
{
totalItemCount = linearLayoutManager.getItemCount();
visibleItemCount = linearLayoutManager.getChildCount();
firstVisibleItem = linearLayoutManager.findFirstVisibleItemPosition();
if (loading) {
Log.i(TAG, "scrolled loadin "+ loading+" "+saleHeaderList.size());
if (totalItemCount > previousTotal) {
loading = false;
previousTotal = totalItemCount;
}
}
if (!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem + VISIBLE_THRESHOLD)) {
Log.i(TAG, "scrolled !loadin "+ loading+" "+saleHeaderList.size());
// Hemos llegado al final
if(salesAdapter.getItemCount()>1) {
offset = offset + limit;
saleHeaderList.addAll(saleHeaderModel.getSaleHeaderCollectPagination(limit,
offset, filter, config.showVerified, config.allCustomers));
recyclerView.post(new Runnable() {
public void run() {
// There is no need to use notifyDataSetChanged()
salesAdapter.notifyItemRangeInserted(offset, saleHeaderList.size());
}
});
loading = true;
}
}
}
}
});
}
. Я обнаружил, что при изменении предела нумерации страниц с 10 на Размер списка показывает все данные.
Я сделал это, изменив форму нумерации страниц с 10 на 15, но до сих пор не знаю, что вызывает ошибку