java - 如何在 firebase 数据库中检索特定子项的数据 - android studio/java?
问题描述
我想检索特定孩子的数据,我该如何编写代码?我尝试了很多,但没有成功:“([就像在我的数据库中一样,如何获取特定孩子(如 lubna)的任务并获取所有孩子?
解决方案
初始化类变量:
private DatabaseReference mDatabase;
mDatabase = FirebaseDatabase.getInstance().getReference();
private DatabaseReference lubnaRef = mDatabase.child("tasks/Lubna");
然后出于测试目的,我假设您在onCreate
活动方法中调用它,假设您没有数据模型,您将添加以下内容:
lubnaRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//These are all of your children.
Map<String, Object> lubna = (Map<String, Object>) dataSnapshot.getValue();
for (String childKey: lubna.keySet()) {
//childKey is your "-LQka.. and so on"
//Your current object holds all the variables in your picture.
Map<String, Object> currentLubnaObject = (Map<String, Object>) lubna.get(childKey);
//You can access each variable like so: String variableName = (String) currentLubnaObject.get("INSERT_VARIABLE_HERE"); //data, description, taskid, time, title
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
推荐阅读
- python - 你如何在python3中打开文本文件?
- javascript - 创建比较文件并获取缺失标签的独立冷融合文件 (cfml)
- java - Java 8流过滤器返回第一个条件满足
- java - 对于某些用户,XSSF 工作簿标识符返回为 null
- python - 无法打开我使用 OpenCV 制作的 .avi 文件
- servlets - 如何将代理创建为战争文件?
- c - 使用莱布尼茨公式找到数字 pi 的 C 代码
- swift - LLDB 无法检查全局变量
- android - 除非我通过 root 打开它,否则无法点击 Android Studio 上的任何内容
- python-3.x - 用它们的平均值替换数组元素