How to get value of parent node as string?

前端 未结 3 1072
春和景丽
春和景丽 2020-12-06 23:41

So in the above data structure, I want to get value Aprilia Caponord 1200 (marked in fig.). I have Firebase reference to Aprilia (root nod

3条回答
  •  無奈伤痛
    2020-12-06 23:56

    I met this case and solved the way as below:

    final ChildEventListener countsListener = new ChildEventListener() { //for querying how many card created by each user in a specific period
                @Override
                public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
                    /**
                     * $ROOT/Apirilia/Apirilia_id/CardId/IMG_URL
                     * $ROOT/Apirilia/Apirilia_id/CardId/PRICE
                     *                      ^[key] :[value]
                     */
                    if (dataSnapshot == null) {
                        Logger.e("!!! dataSnapshot is null");
                        return;
                    }
                    String apirilia_id = dataSnapshot.getRef().getParent().getKey();
                    Logger.d("... Apirilia_id:" + apirilia_id);
                }
    
                @Override
                public void onChildChanged(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
    
                }
    
                @Override
                public void onChildRemoved(@NonNull DataSnapshot dataSnapshot) {
    
                }
    
                @Override
                public void onChildMoved(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
    
                }
    
                @Override
                public void onCancelled(@NonNull DatabaseError databaseError) {
    
                }
            };
    

    I'm appreciated to be able to give one a hand.

提交回复
热议问题