Есть много подобных вопросов по этому поводу, но почему-то это не работает для меня. У меня есть база данных в Firebase, где у меня есть ребенок из категории, отличной от другого ребенка, который является ArrayList. Этот ребенок называется "галерея". Галерея имеет ArrayList 0: ссылка на изображение, 1: ссылка на изображение и т. Д. Теперь я хочу отобразить это в виде переработчика. У меня уже есть код, но он определенно далек от работы, поскольку это ArrayList.
Скриншоты:
- База данных:
- RecyclerView
Вот коды:
Details.java
//comment
recyclerView = (RecyclerView)findViewById(R.id.recyclerComment);
recyclerViewGallery = (RecyclerView) findViewById(R.id.recyclerGallery);
recyclerView.setLayoutManager(newLLM());
recyclerViewGallery.setLayoutManager(newLLM());
private LinearLayoutManager newLLM() {
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
return linearLayoutManager;
}
private void loadGalleryBeach(String menuID) {
Query query = beach.orderByChild("menuID").equalTo(menuID);
FirebaseRecyclerOptions<Gallery> options = new FirebaseRecyclerOptions.Builder<Gallery>()
.setQuery(query, Gallery.class)
.build();
adapter2 = new FirebaseRecyclerAdapter<Gallery, ShowGalleryViewHolder>(options) {
@Override
protected void onBindViewHolder(@NonNull ShowGalleryViewHolder holder, int position, @NonNull Gallery model) {
GalleryImages image = gallery.get(position);
Picasso.get()
.load(image.getImage())
.into(holder.imageView);
}
@NonNull
@Override
public ShowGalleryViewHolder onCreateViewHolder(ViewGroup parent, int i) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.show_gallery_layout, parent, false);
return new ShowGalleryViewHolder(view);
}
};
adapter2.startListening();
recyclerViewGallery.setAdapter(adapter2);
}
ShowGalleryViewHolder
public class ShowGalleryViewHolder extends RecyclerView.ViewHolder {
public ImageView imageView;
public ShowGalleryViewHolder(@NonNull View itemView) {
super(itemView);
imageView = (ImageView)itemView.findViewById(R.id.gallery_image);
}
}
Gallery.java (модель)
public class Gallery {
private List<GalleryImages> gallery;
public Gallery() {
}
public Gallery( List<GalleryImages> gallery) {
this.gallery = gallery;
}
public List<GalleryImages> getGallery() {
return gallery;
}
public void setGallery(List<GalleryImages> gallery) {
this.gallery = gallery;
}
}
GalleryImages.java
public class GalleryImages {
private String image;
public GalleryImages() {
}
public GalleryImages(String image) {
this.image = image;
}
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
}