Получить значения в recycler из нескольких баз данных в firebase android studio - PullRequest
0 голосов
/ 21 июня 2020

Я создал базу данных «Заказ размещен» и извлек в нее значения из двух классов модели. Я хочу показать сведения о продукте в соответствии с идентификаторами заказов и пользовательскими данными пользователя администратору в представлении ресайклера. Пожалуйста помоги. Невозможно получить эту базу данных в представлении ресайклера. Я прикрепляю pi c своей базы данных. Пожалуйста помоги. Я новичок в этом.

РЕДАКТИРОВАТЬ: ДОБАВЛЕНИЕ КОДА. ДАННЫЕ НЕ ВОССТАНОВЛЯЮТСЯ.

Образ базы данных

Список list = new ArrayList <> ();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_admin_user_products_display);
    // Assign id to RecyclerView.
    recyclerView = (RecyclerView) findViewById(R.id.recyclerView3);




    recyclerView.setHasFixedSize(true);
    FAuth = FirebaseAuth.getInstance();
    currentuser = FAuth.getCurrentUser().getUid();
    recyclerView.setLayoutManager(newLinearLayoutManager(AdminUserProductsDisplay.this));
    AData = FirebaseDatabase.getInstance().getReference("Orders Placed").child(currentuser);


    AData.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
                


                            product_details imageUploadInfo = postSnapshot.getValue(product_details.class);
                            list.add(imageUploadInfo);

                        }
                        adapter = new com.example.ecom.AdminUserProductRecycler(getApplicationContext(), list);

                        recyclerView.setAdapter(adapter);
                    
        }
        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {

        }
    });

}

}

1 Ответ

0 голосов
/ 21 июня 2020

Сначала вы должны получить данные из базы данных Firebase

 private DatabaseReference mDatabase;
 mDatabase = FirebaseDatabase.getInstance().getReference();

 mDatabase.child("Orders Placed").child(id).child(Order 
 ids).addListenerForSingleValueEvent(
                new ValueEventListener() {
                    @Override
                    public void onDataChange(DataSnapshot dataSnapshot) {


                        // HANDLE DATA and PASS TO ADAPTER ATTACHED TO RECYCLER VIEW
                      
                   
                    }

                    @Override
                    public void onCancelled(DatabaseError databaseError) {
                        Log.w(TAG, "getUser:onCancelled", databaseError.toException());
                        
                    }
                });

Для реализации представления Recycler Следуйте этому

Simple Android Пример RecyclerView

ОБНОВЛЕНИЕ

попробуйте создать и назначить адаптер прямо там, где вы устанавливаете диспетчер компоновки, а затем просто вызовите

adapter.notifyDataSetChanged(); 

внутри слушателя после добавления данных в список

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...