Tôi đang phát triển một ứng dụng Android trong đó tôi đang lưu trữ hai loại thông tin khác nhau trên 'FirebaseDatabase`.Làm cách nào để đặt hai bộ điều hợp cho một RecyclerView?
Sau đó, trong MainActivity
, tôi sẽ truy xuất chúng và hiển thị cho người dùng trong một RecyclerView
. Cả hai thông tin có nghĩa là được hiển thị trong các bố cục khác nhau, tức là bố cục cho cả hai bố cục khác nhau và đó là lý do tại sao tôi tạo hai lớp Mô hình khác nhau và hiện có 2 bộ điều hợp khác nhau. Tôi đang sử dụng FastAdapter bởi @MikePenz
Vì vậy, những gì tôi đã làm là tôi đặt bộ chuyển đổi trên recyclerview trong chuỗi giống như thông tin được lấy từ cơ sở dữ liệu:
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);
}
vì recyclerview chỉ là một và tôi thiết lập 2 bộ điều hợp khác nhau từng cái một, recyclerview được cập nhật với bộ điều hợp thứ 2 và chỉ hiển thị Nội dung của nó.
Vì vậy, làm cách nào tôi có thể hiển thị hoặc đặt cả bộ điều hợp cho cùng một 'RecyclerView' và có thể hiển thị nội dung được lưu trữ trong cả bộ điều hợp.
bạn có thể làm hai loại viewholder và yêu cầu một giao diện ... nếu mục là instanceof Class1 vẽ viewholder1 khác viewholder2 – JCDecary
@ JCDecary nhưng tôi phải cho cả hai người xem trong recyclerview. Tôi nghĩ rằng mã của bạn sẽ hiển thị một trong hai. Đúng? –
không có bạn sẽ có cả hai bạn juste có để ghi đè lên getitemcount – JCDecary