Android中的Firebase数据库参考

时间:2018-12-21 07:13:32

标签: android firebase firebase-realtime-database

enter image description here

我当前的代码是这样:

String key = FirebaseDatabase.getInstance().getReference().child("posts").child("???").child("numLikes").toString;

如何获取numLikes值?

1 个答案:

答案 0 :(得分:2)

final ArrayList<Integer> arrayList = new ArrayList<>();
        DatabaseReference dbRef = FirebaseDatabase.getInstance().getReference("posts");
        dbRef.addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
                arrayList.clear();
                for (DataSnapshot ds: dataSnapshot.getChildren()) {
                    int numLike = ds.child("numLikes").getValue(Integer.class);
                    arrayList.add(numLike);
                }
            }

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

            }
        });

尝试此代码,这里您不知道按键,因此我使用了forEach循环将其跳下一层。此处使用的arraylist将包含您用户的所有numLikes。