如何获取Logcat中Firebase数据库的每个条目的密钥?

问题描述 投票:0回答:1

enter image description here

这是我的代码:

 databaseReference = FirebaseDatabase.getInstance().getReference("News");
    final String z = databaseReference.child(String.valueOf(homeModelList.get(position))).getKey();

    Toast.makeText(context, z, Toast.LENGTH_SHORT).show();
    databaseReference.addListenerForSingleValueEvent(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

            Log.e("Position is ", String.valueOf(z));

        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {

        }
    });

我无法获取各个职位的钥匙。我正在logcat中将Output设置为0,1,2,即适配器的位置。

我如何获得那个钥匙。谢谢

android firebase-realtime-database recycler-adapter
1个回答
0
投票

您可以使用for循环遍历datasnapshot的子代以获取密钥。

databaseReference.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

        for (DataSnapshot childSnapshot: dataSnapshot.getChildren()) {
            Log.e("Position is ", String.valueOf(childSnapshot.getKey()));
        }

    }

    @Override
    public void onCancelled(@NonNull DatabaseError databaseError) {

    }
});
© www.soinside.com 2019 - 2024. All rights reserved.