gpt4 book ai didi

java - 从 firebase 中检索没有标签的 child

转载 作者:行者123 更新时间:2023-12-02 10:19:48 24 4
gpt4 key购买 nike

我正在尝试从 firebase 检索没有标签/名称的子节点。我知道这不是在 firebase 中存储子节点的正确方法,这只是我存储它们以便计数函数工作的唯一方法。

我正在尝试检索“技术”或“生物和生态”等类别。我的数据库设置如下:

  CountLikes{
Project 23{
Biological and Ecological{
Votes: 1
}}

Project 32{
Biological and Ecological{
Votes: 0
}}

Project 439{
Technology{
Votes: 2
}}

我可以使用以下命令检索项目名称(即“Project 23”、“Project 32”)和票数:

 //Button Click Listener
mReadButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("CountLikes/");

ValueEventListener eventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {



for(DataSnapshot ds : dataSnapshot.getChildren()) {
String name = ds.getKey();
Long vote = ds.child("Votes").getValue(Long.class);


mProjectName.setText(name);
mProjectCategory.setText(String.valueOf(vote));
}
}

@Override
public void onCancelled(DatabaseError databaseError) {}
};
ref.addListenerForSingleValueEvent(eventListener);

我是否可以检索该类别?

最佳答案

我不清楚您的数据结构的含义,因此很难准确理解您要查找的内容。但此代码将使用您当前拥有的监听器遍历整个 DataSnapshot:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("CountLikes");

ref.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot child: dataSnapshot.getChildren()) {
System.out.println(child.getKey()); // prints "Project 23", "Project 32", etc
for(DataSnapshot grandchild: child.getChildren()) {
System.out.println(grandchild.getKey()); // prints "Biological and Ecological", etc
System.out.println(grandchild.child("Votes").getValue(Long.class)); // prints 1, 0, etc
}

}

}

@Override
public void onCancelled(DatabaseError databaseError) {
throw databaseError.toException();
}
});

关于java - 从 firebase 中检索没有标签的 child ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54419520/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com