我有一个用于Android的firebase数据库。
要从Firebase检索并显示数据,我正在使用FirebaseRecyclerAdapter,并将结果显示到CardView。
现在,我将所有列表从所需的表移至CardView。每个节点都有一个自动生成的值,如下图所示。
当我单击相应的CardView时,如何在Android中检索此值。我需要此值来进行进一步的数据库操作。
现在,我尝试了此处发布的一些方法以及在线论坛,但似乎没有任何效果。我不是要完整的代码,而是要怎么做?一些参考代码会很棒。
致谢
答案 0 :(得分:1)
要获取节点ID,请尝试以下操作:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
Query query = rootRef.child("Projects");
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
String key = ds.getKey();
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Log.d(TAG, databaseError.getMessage());
}
};
query.addListenerForSingleValueEvent(valueEventListener);
首先,添加对节点Projects
的引用,然后在其内部循环并使用getKey()
检索ID。