Heim  >  Artikel  >  Java  >  Wie füge ich Kopf- und Fußzeilen zu einer RecyclerView in Android 5.0 hinzu?

Wie füge ich Kopf- und Fußzeilen zu einer RecyclerView in Android 5.0 hinzu?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-12 17:49:01866Durchsuche

How to Add Headers and Footers to a RecyclerView in Android 5.0?

Kopf- und Fußzeile zu einer RecyclerView in Android 5.0 hinzufügen

Die RecyclerView in Android 5.0 bietet eine praktische Möglichkeit, eine Liste von Elementen anzuzeigen. Das Hinzufügen von Kopf- und Fußzeilen zur Liste kann jedoch etwas schwierig sein. So können Sie dies erreichen:

Hinzufügen einer Kopfzeile:

  1. Erstellen Sie eine neue Layoutdatei (z. B. header_layout.xml) für Ihre Kopfzeile.
  2. Erweitern Sie das Header-Layout in der onCreate()-Methode Ihres RecyclerView Adapter:
LayoutInflater inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
headerPlaceHolder = inflater.inflate(R.layout.header_layout, null, false);
  1. Fügen Sie die Kopfzeilenansicht mit der addView()-Methode zum LayoutManager hinzu:
layouManager.addView(headerPlaceHolder, 0);

Hinzufügen einer Fußzeile:

  1. Erstellen Sie eine neue Layoutdatei (z. B. footer_layout.xml) für Ihre Fußzeile.
  2. Erweitern Sie das Fußzeilenlayout in der onCreate()-Methode Ihres RecyclerView-Adapters:
LayoutInflater inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
footerPlaceHolder = inflater.inflate(R.layout.footer_layout, null, false);
  1. Fügen Sie die Fußzeilenansicht zum hinzu LayoutManager mit addView() Methode:
layouManager.addView(footerPlaceHolder);

Überlegungen für verschiedene LayoutManager:

  • LinearLayoutManager: Die Methode addView() fügt das ein Kopf- oder Fußzeilenansicht an der angegebenen Position im Layout.
  • GridLayoutManager: Sie müssen eine neue SpanSizeLookup-Klasse erstellen und sie im GridLayoutManager festlegen, um die Anzahl der von der Kopf- oder Fußzeile belegten Bereiche zu steuern Ansicht.
GridLayoutManager.SpanSizeLookup spanSizeLookup = new GridLayoutManager.SpanSizeLookup() {
    @Override
    public int getSpanSize(int position) {
        if (position == 0 || position == data.size()) {
            return gridLayoutManager.getSpanCount();
        } else {
            return 1;
        }
    }
};
gridLayoutManager.setSpanSizeLookup(spanSizeLookup);

Hinweis:

  • Die getItemCount()-Methode Ihres RecyclerView-Adapters sollte die Anzahl der Datenelemente plus die Anzahl zurückgeben der hinzugefügten Kopf- und Fußzeilen.
  • Die Methode getItemViewType() sollte eine eindeutige ID für die Kopf- und Fußzeile sowie reguläre Daten zurückgeben Elemente.

Indem Sie diese Schritte befolgen, können Sie ganz einfach Kopf- und Fußzeilen zu Ihrem RecyclerView in Android 5.0 und höher hinzufügen.

Das obige ist der detaillierte Inhalt vonWie füge ich Kopf- und Fußzeilen zu einer RecyclerView in Android 5.0 hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn