来自Firebase实时数据库的Android读取数据和在RecyclerView上显示?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (175)

我已成功地在Firebase的RTD中保存数据, databaseIngredients.child(StringId).setValue(ingredients); 其中“ingredients”是从EditText获取的String,StringId是“push”方法的唯一ID。我已经提到了许多教程,但我无法阅读它,我希望每次使用新数据更新数据库时都要更新我的RecyclerView。我只想使用recyclerView显示数据库中的所有数据。我不理解ValueEventListener方法。请耐心等待,因为我理解Firebase的新回复。

提问于
用户回答回答于

你可以使用FirebaseRecyclerAdapter。你需要一个模型类和一个ViewHolder类。如果你使用的是新版本,firebase-ui则必须使用FirebaseRecyclerOptions以及FirebaseRecyclerAdapter

用户回答回答于

、数据库参考=database.getReference(“Database”).child(StringId).setValue(ingredients);

reference.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        if(dataSnapShot.exists()){
            //update recyclerview or do anything with your data
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        Toast.makeText(getApplicationContext(), databaseError.getMessage(), Toast.LENGTH_SHORT).show();
    }
});

扫码关注云+社区

领取腾讯云代金券