Ich verwende eine RecyclerView
wo ein Boolean in getItemCount()
beteiligt ist. Dieser boolesche Wert steuert die Sichtbarkeit des letzten Elements in der RecyclerView
, ähnlich wie eine Last mehr Sicht, aber etwas anders. Von Zeit zu Zeit ändert sich der Wert dieses Boolean, so dass RecyclerView
wissen, ob das letzte Element enthalten sein soll.RecyclerView - Kontrolle der Anzahl von Elementen durch boolean
Der Code sieht so etwas wie diese
@Override
public int getItemCount() {
return mItemArray.size() + (shouldShow ? 1 : 0);
}
Wenn der Wert von shouldShow
aktualisiert wird, ich bin nicht notifyDataSetChanged()
oder notifyItemChanged()
nennen, aber die RecyclerView
noch richtig aktualisiert wird. Aber ich mache mir Sorgen, dass es schließlich dazu führen wird, dass der RecyclerView
wegen Inkonsistenz abstürzt. Meine Fragen sind,
- wird mit einem dynamischen boolean Wert in
getItemCount()
eine richtige Art und WeiseRecyclerView
Größe zu kontrollieren? - Sollte ich
notify...()
aufrufen, wenn sich der Wert dieses boolean ändert? - Würde mein
RecyclerView
wegen Inkonsistenz abstürzen?
Vielen Dank für die Beantwortung, aber was meinst du mit "Passing int in it"? – katie
ich meine als getItemCount return int sollten wir nur int Werte übergeben, Sie übergeben 1 oder 0 basierten booleschen Wert ist es korrekt –