我要刷新回收适配器,其中数据来自Firebase?

时间:2019-04-10 10:41:08

标签: android android-recyclerview swipe recycler-adapter recycle

我有ArrayList,我已成功将数据设置为适配器,我想添加滑动以刷新适配器,以检查Firebase中可用的任何新数据来更新回收站。

    firebaseDatabase=FirebaseDatabase.getInstance();
    getFirebaseData();

}

public void getFirebaseData()
{
    databaseReference=firebaseDatabase.getReference("recyclerview");
    databaseReference.addChildEventListener(new ChildEventListener() {
        @Override
        public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s) 
        {
            itemsModel=new ItemsModel();
            itemsModel=dataSnapshot.getValue(ItemsModel.class);
            itemsModelList.add(itemsModel);
            recyclerView.setAdapter(myAdapter);
        }

1 个答案:

答案 0 :(得分:0)

您仅应调用一次:OnCreate方法上的recyclerView.setAdapter(myAdapter)。

然后,当添加一个孩子时,当您在听数据库中的引用时,将调用onChildadded方法,并在其中使用以下代码:

itemsModel=new ItemsModel();
        itemsModel=dataSnapshot.getValue(ItemsModel.class);
        itemsModelList.add(itemsModel);
        myAdapter.notifydatasetchanged();

然后,每次添加孩子时,它将显示在屏幕上。