2017-06-15 3 views
2

firebaseアプリケーションで作業しています&データベースをcardview/listviewに取得している間にスタックしました。firebaseから複数のデータをカードビュー/リストビューに取り出すことができません

firebaseデータベースのデモをご覧ください。

db 
    |- 001 
     |- details 
      |- key1: "value1" 

      |- key2: "value2" 

      |- key3: 
       |- key3_1: "value3_1" 

      |- key4: 
       |- key4_1: "value4_1" 

これはデモデータベースですが、私の要件とまったく同じです。 ここではすべてのキーと値のペアを取得します。私は最初に上記の例に基づいて "/ db"と言及した子供のデータベース参照を渡してみました。それから私はデータを取得しようとしたが、上記の例ではうまくいかなかった。興味がある人は、これについてあなたのアイデアを共有してください!

ご迷惑をおかけして申し訳ございません。

答えて

1

このコードを使用してください:

DatabaseReference yourRef = FirebaseDatabase.getInstance().getReference().child("001").child("details"); 
ValueEventListener eventListener = new ValueEventListener() { 
    @Override 
    public void onDataChange(DataSnapshot dataSnapshot) { 
     String key1 = dataSnapshot.child("key1").getValue(String.class); 
     String key2 = dataSnapshot.child("key2").getValue(String.class); 
     //and so on 
    } 

    @Override 
    public void onCancelled(DatabaseError databaseError) {} 
}; 
yourRef.addListenerForSingleValueEvent(eventListener); 

あなたの出力は次のようにウィル:

value1 
value2 
value3 
//and so on 

それがお役に立てば幸いです。

+0

'ds.child(...)を使用して'間違っds'はすでに* * A ' "詳細"'子ノードであることを考えると '見えます。 –

+0

私は最後のループを削除しました。パウロに感謝します。私の更新された答えを見てください。 –

+0

ありがとうございました!できます!!! –

関連する問題