Я хочу показывать продукты в моем заказе. Я использую функцию recycler View для отображения продуктов.
Это моя база данных (красная стрелка указывает идентификатор пользователя). [1]: https://i.stack.imgur.com/STOgO.jpg
user = FirebaseAuth.getInstance().getCurrentUser();
final Query orderQuery = FirebaseDatabase.getInstance().getReference("Orders")
.child(user.getUid());
FirebaseRecyclerOptions<Orders> options = new FirebaseRecyclerOptions.Builder<Orders> ()
.setQuery(orderQuery, Orders.class).build();
orderAdapter = new FirebaseRecyclerAdapter<Orders, MyOrdersViewHolder>(options) {
@NonNull
@Override
public MyOrdersViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View v = LayoutInflater.from(getBaseContext()).inflate(R.layout.view_myorders_item,parent,false);
return new MyOrdersViewHolder(v);
}
@Override
protected void onBindViewHolder(@NonNull final MyOrdersViewHolder holder, int position, @NonNull final Orders model) {
orderQuery.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if(dataSnapshot.child(model.getTime()).child("MyOrders").child("products").exists()) {
orderName = String.valueOf(dataSnapshot.child("MyOrders").child("products").child("p_name").getValue());
holder.p_order_name.setText(orderName);
orderPrice = String.valueOf(dataSnapshot.child("MyOrders").child("products").child("totalPrice").getValue());
holder.p_order_totalPrice.setText("Total Amount: ₹" + orderPrice);
orderQuantity = String.valueOf(dataSnapshot.child("MyOrders").child("products").child("quantity").getValue());
holder.p_order_quantity.setText("Qty : " + orderQuantity);
orderImage = String.valueOf(dataSnapshot.child("MyOrders").child("products").child("p_image").getValue());
Picasso.get().load(orderImage).into(holder.p_order_img);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
};
Я использую этот код, но не могу получить желаемый результат.