2017-06-27 140 views
-2

我想檢索所有差事名稱,這些名稱是我的Firebase數據庫中子節點的子節點。從Firebase中的子節點的子節點檢索數據

I would like to retrieve all the errands

不過,我只能夠引用,直到第二個孩子節點(隨機密鑰) 這裏是我的代碼;

View view = inflater.inflate(R.layout.tab1,container,false); 
    String r = "Errands"; 
    root = FirebaseDatabase.getInstance().getReference().child(r); 
    list = (ListView) view.findViewById(R.id.mylistview); 

    arrayAdapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1,list_of_errands); 

    list.setAdapter(arrayAdapter); 

    root.addValueEventListener(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 


      Set<String> set = new HashSet<String>(); 
      Iterator i = dataSnapshot.getChildren().iterator(); 

      while (i.hasNext()) { 
       set.add(((DataSnapshot) i.next()).getKey()); 
      } 

請協助

回答

1

請使用此代碼:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference(); 
DatabaseReference errandsRef = rootRef.child("Errands"); 
ValueEventListener eventListener = new ValueEventListener() { 
    @Override 
    public void onDataChange(DataSnapshot dataSnapshot) { 
     for(DataSnapshot ds : dataSnapshot.getChildren()) { 
      String key = ds.getKey(); 

      DatabaseReference keyRef = rootRef.child("Errands").child(key); 
      ValueEventListener valueEventListener = new ValueEventListener() { 
       @Override 
       public void onDataChange(DataSnapshot dataSnapshot) { 
        String Errand = ds.child("Errand").getValue(String.class); 
        Log.d("TAG", Errand); 
       } 

       @Override 
       public void onCancelled(DatabaseError databaseError) {} 
      }; 
      keyRef.addListenerForSingleValueEvent(valueEventListener); 
     } 
    } 

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

而你的輸出將是:

Go to Strath 
//and so on 

希望它能幫助。

+0

不幸的是它沒有顯示任何東西。 –

+0

請看我更新的答案。我還添加了一個'Log'語句。 –

+0

非常感謝Alex。你以前的答案奏效。我只需要將String Errand附加到列表視圖。 –

相關問題