android - 在 Firebase 中获取 child 的名字

标签 android firebase firebase-realtime-database

{
  "items" : {
    "Chemistry" : {
      "-KiUOPW8TR_QcEeDbrAy" : {
        "answer" : "ssssss",
        "id" : "1",
        "question" : "sss"
      }
    },
    "Countries" : {
      "-KiUR2ilBYN5LJU6uOCf" : {
        "answer" : "ffffff",
        "id" : "1",
        "question" : "fffff"
      }
    },
    "Film" : {
      "-KiUOr7GbPhV_perbHt4" : {
        "answer" : "dddd",
        "id" : "1",
        "question" : "dd"
      }
    }
}

从上面的数据中,我只想获取项目的子名称。

例如。我想得到这些名字

Chemistry 
Countries 
Film

我该怎么做?

最佳答案

要获取这些名称,请使用以下代码:

DatabaseReference itemsRef = FirebaseDatabase.getInstance().getReference().child("items");
ValueEventListener eventListener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for(DataSnapshot ds : dataSnapshot.getChildren()) {
            String name = ds.getKey();  
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        Log.d("TAG", databaseError.getMessage()); //Don't ignore potential errors!
    }
};
itemsRef.addListenerForSingleValueEvent(eventListener);

关于android - 在 Firebase 中获取 child 的名字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43586595/

相关文章:

WebViewCoreThre 中的 Android 致命信号 11 (SIGSEGV)

android - 将多个图像合并为一个图像

angular - 如何在 Angularfire2 Angular2 中对 FirebaseListObservable 列表进行排序?

firebase - 如何在Flutter Firebase App中捕获DatabaseError

java - Firebase : NumberFormatException on reference. 子 ("key").toString();

android - 导航 Lint 错误 : This navigation graph is not referenced from any layout files

java - Android - 尝试从 Activity 2 到 Activity 1 以及从方法到方法获取数据

firebase - 将数据保存到 Firebase 用户对象中

swift - 将图像检索到 3 个 ImageView (Firebase 和 Swift)

java - 我使用 google 登录与 firebase 进行身份验证,现在我想显示当前用户保存的数据,但它不起作用