2016-04-03 6 views
0

Im Dokument heißt es, dass die Position Position: Die Position eines Datenelements innerhalb eines Adapters ist. was ich bekomme, ist es die Position des Elements in der Recyclerview, aber ich bekomme nicht, was ein Index: Der Index einer angehängten untergeordneten Ansicht wie in einem Aufruf von getChildAt (int) verwendet. Kontrast zur Position. Betrachtet das Kind die aufgeblähte XML-Datei, und wenn ja, wie lautet der Index?Was ist die ChildView und Index einer Recyclerview?

Antwort

0

Sie haben tatsächlich 3 Werte für jedes Element:

  • Adatper Position
  • Layout-Position
  • und eine ID, wenn Sie stableIds verwenden, wird auf -1 für alle Artikel Standard.

Adapter Position ist diejenige, die Sie höchstwahrscheinlich Verwendung. Wenn Sie Ihre Daten haben

String[] myListData; 

die Adapterposition ist derjenige bindViewHolder(VH holder, int adapterPosition) mit aufgerufen wird. Er identifiziert Ihre Objekte, die Sie anzeigen möchten.


Wenn Sie eine Liste mit 1000 Elemente haben nur eine Handvoll (beispielsweise 10) auf einmal — angezeigt bekommen dies ist, warum Sie eine recyclerView verwenden und nicht ein Linearlayout.

Der Index der Ansicht oder Layoutposition ist für Sie von Interesse, wenn Sie wissen möchten, wo Ihr Artikel angezeigt wird. Wenn Sie scrollen, sind die ersten 10 Elemente möglicherweise nicht sichtbar, und das 11. Element könnte das erste sichtbare sein —, also layoutPosition==0, or index==0 — ist die Spitze Ihrer Bildlaufliste.

Sie benötigen dies nur, wenn Sie eine benutzerdefinierte Zeichnung erstellen möchten, z. B. RecyclerView.ItemDecoration oder eine andere Scroll/State-Wiedergabe. Für die grundlegende Verwendung einer RecyclerView kann der Index oder die Layoutposition sicher ignoriert werden.

Verwandte Themen