2017-10-05 40 views
0

firebaseデータベースの子ノードから値を読み取ろうとしています。これらの子ノードは実行時に追加されることが重要です。だから今の子の名前はわかりません。firebase androidの動的な子供の値を読み取る

これらの子ノードから共通の値を読み取ることはできますか?その構造は画像として添付されています。青は動的な子ノード、赤は読み取り値です。

Database Structure

+0

あなたはすでに取得した距離のコードを表示できますか?そうすれば、欠けている部分を見つけやすくなります。 –

答えて

1

私が正しくあなたの質問を理解している場合、青色の子どもたちは、動的に追加されている、とあなたは、実行時にそれらの名前を取得したいと思います。次のコードを試してみてください:

DatabaseReference databaseReference=FirebaseDatabase.getInstance().getReference().child("data") 
        .child("idsToTrack").child(data_unique_id); 

      databaseReference.addChildEventListener(new ChildEventListener() { 

         @Override 
         public void onChildAdded(DataSnapshot dataSnapshot, String s) { 
          String childName=dataSnapshot.child("name").getValue(String.class); 

         } 

         @Override 
         public void onChildChanged(DataSnapshot dataSnapshot, String s) { 

         } 

         @Override 
         public void onChildRemoved(DataSnapshot dataSnapshot) { 

         } 

         @Override 
         public void onChildMoved(DataSnapshot dataSnapshot, String s) { 

         } 

         @Override 
         public void onCancelled(DatabaseError databaseError) { 

         } 
        }); 

このリスナーが欲しかったノードの下にあなたの子供の交通に関する多くの情報を提供します。この例では、追加された子の名前が追加された時点で取得されます。

関連する問題