私は 'FirebaseDatabase`の2種類の情報を格納しているアンドロイドアプリを開発しています。2つのアダプタを1つのRecyclerViewに設定する方法は?
次に、MainActivity
では、それらを取得して、RecyclerView
のユーザーに表示しています。両方の情報は異なるレイアウトで表示されることを意図しています。つまり、両方のレイアウトが異なります。そのため、2つの異なるModelクラスを作成し、2つの異なるアダプタを使用しています。
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:私は、私がやったことは情報がデータベースからフェッチされると私は同じ順序でrecyclerviewにアダプタを設定されているので、@MikePenz
でFastAdapterを使用しています。
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);
}
recyclerviewは一つだけであると私は一つ一つ、recyclerviewは、第二のアダプターで更新のみ示すなっている2つの異なるアダプタを設定していてそれは内容です。
どのようにして、両方のアダプタを同じ「RecyclerView」に表示または設定し、両方のアダプタに格納されているコンテンツを表示することができますか。
あなたはviewholderの2種類を行うことができますし、インターフェイスをお願い...項目がINSTANCEOFがそうでなければviewholder1 viewholder2 – JCDecary
を描くClass1のであれば@ JCDecaryしかし、私はそれらの両方をrecyclerviewに示す必要があります。私はあなたのコードがいずれかを表示すると思います。右? –
あなたはどちらも持っていないでしょう。getitemcountをオーバーライドする必要があります – JCDecary