我目前正在使用Android Studio开发应用程序。
现在,我想使用Fire DB,以便在启动应用程序时从Arraylist中的数据库中接收信息。在这种情况下,应将数据库中的节点及其属性保存为对象。
数据库的结构仍然很灵活。我计划将编号设置为1,并在索引下标记一个对象的所有属性。 如果还有其他意义,仍然可以更改
如何读取这些并将它们存储在每个索引的对象中,然后将其放入数组列表中?
我已经找到了几个在线示例,但没有一个起作用。
因此,对于我可以测试并可能讨论的输入内容,我将不胜感激。
答案 0 :(得分:1)
请添加一些示例代码以了解我们的工作。
您需要执行以下操作
1)包含setter和getter方法的模型类(与您存储在firebase中的名称相同)
如果您在一个对象中有多个节点,
2)RecyclerView和RecyclerAdapter类
3)DatabaseRefrence访问您的数据。
从Firebase检索数据的示例代码
final List<Certificates> list=new ArrayList<>();
DatabaseReference reference= FirebaseDatabase.getInstance().getReference().child("Object");
reference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot)
{
list.clear();
for (DataSnapshot snapshot:dataSnapshot.getChildren())
{
Model model=snapshot.getValue(Model.class);
list.add(model);
}
RecyclerAdapter adapter=new RecyclerAdapter(list,Activity.this);
recyclerView.setLayoutManager(new LinearLayoutManager(CertificatesActivity.this));
recyclerView.setAdapter(adapter);
recyclerView.addItemDecoration(new DividerItemDecoration(recyclerView.getContext(),DividerItemDecoration.VERTICAL));
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError)
{
//handle error here
}
});
如果您需要帮助以了解情况,请告诉我。