-2
を更新しないnotifyItemRangeInserted。各要求は20行を取得し、私は< 20アイテムを取得する場合、私は、このボタンを無効にする必要があります:私は無効に設定され1つの以上の項目はfalseに設定isVisibleLoadButton
と私の負荷よりボタンでopcTransactions
を取得した場合は、私はフッターのようなRecyclerViewで改ページボタンで(以上の負荷)</p> <p>ロード[詳細]ボタンを持って商品を
@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());
}
を。しかし、私がemtyリストを取得した場合opcTransactions
サイズ= 0 - Moreボタンを押しても表示されません。
@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;
}
ではありません。私はこれを特別に使用します。 +1を追加した場合 - 最初の20個のアイテムを読み込んだときにリストがbuttom(https://stackoverflow.com/a/30455749/4781349)にスクロールされず、+1ボタンも無効にしないと使用しない場合 – ip696
+ 1?あなたが最終的に 'notifyItemRangeInserted'を' notifyItemChanged'と呼んでいないときです。 – ADM
私はあなたを理解していません。なぜ私が+1を使うのかという答えとのリンクを書いた。 +1を使用しなくてもまだ動作しないことを明らかにしました – ip696