Wie zwei Adapter zu einer RecyclerView?

Ich entwickle eine android-app, in der ich bin die Speicherung von zwei unterschiedlichen Arten von Informationen, die auf 'FirebaseDatabase`.

Dann in der MainActivity bin ich abrufen und Ihnen zeigen, um die Nutzer in einem RecyclerView. Beide Informationen sollen gezeigt werden in unterschiedlichen layouts, D. H., die Entwürfe für die beiden von Ihnen sind anders, und das ist, warum ich habe zwei stellen zwei verschiedene Modell-Klasse und haben nun 2 verschiedene Adapter. Ich bin mit FastAdapter von @MikePenz

So, was ich gemacht habe, habe ich den adapter auf recyclerview in der gleichen Reihenfolge wie die Informationen abgerufen aus der Datenbank:

1.

public void prepareDataOfSRequests() {
        gModelClass = new GModelClass(postedBy, ***, ***, ***, "error", ***, formattedTime, currentLatitude, currentLongitude, utcFormatDateTime, userEmail, userID, null, ***, itemID);
        fastItemAdapter.add(0, gModelClass);
        recyclerView.setAdapter(fastItemAdapter);
        recyclerView.smoothScrollToPosition(0);
        emptyRVtext.setVisibility(View.INVISIBLE);
    }

2.

public void prepareDataOfERequests() {
        eModelClass = new EModelClass(***, ***, ***, ***, "error", ***, formattedTimeE, currentLatitudeE, currentLongitudeE, utcFormatDateTimeE, userEmailE, userIDE, null, ***, ***, ***, ***, itemID);
        fastItemAdapterER.add(eventRequestsModelClass);
        recyclerView.setAdapter(fastItemAdapterER);
        recyclerView.smoothScrollToPosition(0);
        emptyRVtext.setVisibility(View.INVISIBLE);
    }

als die recyclerview ist nur eine und ich werde 2 verschiedene Adapter einzeln, die recyclerview ist immer aktualisiert mit dem 2. adapter und zeigt nur den Inhalt.

So, wie kann ich zeigen, oder legen Sie den adapter an den gleichen "RecyclerView" und zeigen die Inhalte, die in beiden der Adapter.

  • Sie tun kann zwei Arten von viewholder und Fragen Sie nach einem interface... wenn das Einzelteil ist ein class1 zeichnen viewholder1 sonst viewholder2
  • aber ich habe beide von Ihnen in der recyclerview. Ich denke, dein code zeigt entweder eine. Richtig?
  • Nein, du hast sowohl du juste überschreiben müssen, von getitemcount
  • oh okay... bro, kannst du bitte den code schreiben, eigentlich bin ich nicht sehr Professionell in allem, so dass es schwer zu verstehen ist. Es wäre toll, wenn Sie code schreiben, als Antwort. Bitte.
  • Jedynak als schon schneller als ich
  • aber er hat überschreiben getItemViewType() und Sie sagte zu überschreiben getItemCount().
  • ich weiß nicht, warum ich sagte, dass, wenn Sie fügen Sie die zwei Listen zusammen Ihre itemcount wird richtig sein.

InformationsquelleAutor Hammad Nasir | 2016-11-18
Schreibe einen Kommentar