2017-06-27 111 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附加到列表视图。 –

相关问题