java - 在单值事件侦听器上检索 Firebase 实时数据库中的子元素?
问题描述
我试过:
DatabaseReference reference = FirebaseDatabase.getInstance().getReference().child("test1");
reference.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String name = dataSnapshot.getValue(String.class);
Log.d("TAG", name);
}
@Override
public void onCancelled(DatabaseError databaseError) {}
});
但它不起作用。
解决方案
首先创建一个类:
public class MyClass {
private String name;
public MyClass() {
// Default constructor required for calls to DataSnapshot.getValue(MyClass.class)
}
public String getName() {
return name;
}
}
然后按如下方式更新您的代码:
String myInstance = dataSnapshot.getValue(MyClass.class);
String name = myInstance.getName();
推荐阅读
- javascript - 在 JS 中使用正则表达式更正电话号码格式
- javascript - 我对对象数组使用了map方法,但是这个数组中的一项也是对象数组所以我需要获取它的属性
- swift - 如何将对象引用更改为已在 swift 中实现相同协议的新对象?
- java - 两个类似的代码:一个抛出 TLE,而另一个没有。分不清两者的区别
- cortex-m - Cortex-M NVIC 如何继续中断指令?
- c++ - 重新解释二进制格式的 Cast
- java - 在java中使用可选时如何在条件块中放置空检查?
- c# - 您在领域驱动设计中将 DbContext 放在哪里?
- javascript - 寻找环视断言的替代解决方案
- html - 如何在网页中添加视频循环作为背景?