I have RecyclerView.Adapter<RecyclerView.ViewHolder> with pagination button(Load More)
Load More button in RecyclerView like Footer. Each request get 20 rows and if I get <20 items I need disable this button:
 @Override
    public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
        if (holder instanceof ViewHolder) {
            ...
        } else if (holder instanceof FooterViewHolder) {
            ...
            viewHolder.loadMore.setEnabled(isVisibleLoadButton);
        }
    }
public void addData(List<TransactionItem> opcTransactions) {
        final int positionStart = transactionItems.size()+1;
        isVisibleLoadButton = opcTransactions.size() >= 20;
        transactionItems.addAll(opcTransactions);
        notifyItemRangeInserted(positionStart, opcTransactions.size());
    }
If I get opcTransactions with 1 or more items isVisibleLoadButton  set false and my load More button set disable. But If I get emty list opcTransactions size = 0 - load More button not diasbled.
@Override
    public int getItemCount() {
        if (transactionItems == null) {
            return 0;
        }
        if (transactionItems.size() == 0) {
            //Return 1 here to show nothing
            return 1;
        }
        // Add extra view to show the footer view
        return transactionItems.size() + 1;
    }