2016-08-04 81 views
0

我新的火力点 我有以下的数据库检索所有的孩子从一个节点火力地堡,Android的

-Root 
     -IT 
      -KOKlB####nryPhkTaA 
        -name: value 
        -location: value 
        -website: value 
      -KOKlBBPh###nryPhkTaA 
        -name: value 
        -location: value 
        -website: value 
     -Media 
      -KOKlBBP##nryPhkTaA 
        -name: value 
        -location: value 
        -website: value 
      -KOKlBBPhm##yPhkTaA 
        -name: value 
        -location: value 
        -website: value 

的想法是我想要检索每个节点的孩子为前一个ListView :我有一个列表视图,每行包含每个公司的名称,位置和网站。

这是我推到数据库

 public class Company { 

private String name; 
private String location; 
private String website; 

public Company(){} 

public Company(String name,String location, String website) 
{ 
    this.name=name; 
    this.location=location;  
    this.website=website;  
} 

    public Map<String, Object> toMap() 
{ 
    HashMap<String, Object> result= new HashMap<>(); 
    result.put("name",name); 
    result.put("location",location); 
    result.put("website",website); 

    return result; 
} 

    public void addNewCompany(String category,String name,String location, String website) 
{ 
    Company company= new Company(name,location,city,website); 
    String key= mRootRef.child("0").child(category).push().getKey(); 
    Map<String, Object> companyValues=company.toMap(); 

    Map<String, Object> childUpdates=new HashMap<>(); 
    childUpdates.put("0/"+category+"/" + key,companyValues); 

    mRootRef.updateChildren(childUpdates); 

} 

我如何尝试检索

  DatabaseReference mConditionRef=mRootRef.child(category); 
     mConditionRef.addChildEventListener(new ChildEventListener() { 
     @Override 
     public void onChildAdded(DataSnapshot dataSnapshot, String s) { 
       for (DataSnapshot dsp : dataSnapshot.getChildren()) { 
       CoLists.add(String.valueOf(dsp.getValue())); 

       for(String data:CoLists){ 
        mCompanies.add(data); 
} 

但这检索列表中包含的类别root..I内的整体数据希望它成为公司对象的列表。

谢谢

回答

1

可以使用DataSnapshot的.getKey或.getValue()函数所需的数据。

相关问题