Java 如何在Android中以ArrayList的形式从firebase中获取数据

Java 如何在Android中以ArrayList的形式从firebase中获取数据,java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,以这种格式,我在firebase中有数据库。我必须以数组列表的形式显示所有部门,如主管、体育部 mAuth=FirebaseAuth.getInstance(); mdatabase=FirebaseDatabase.getInstance().getReference().child("Department"; mdatabase.addValueEventListener(new ValueEventListener() { @Override public void on

以这种格式,我在firebase中有数据库。我必须以数组列表的形式显示所有部门,如主管、体育部

mAuth=FirebaseAuth.getInstance();
 mdatabase=FirebaseDatabase.getInstance().getReference().child("Department";
mdatabase.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        List<String> Department = (ArrayList<String>) dataSnapshot.getValue();
         DepartmentLIST=Department.toArray(new String[Department.size()]);

    }
   @Override
   public void onCancelled(DatabaseError databaseError) {
       Toast.makeText(CheckUpdate.this,databaseError.getMessage(),Toast.LENGTH_LONG).show();
   }

  });

setListAdapter(new ArrayAdapter(this,
        android.R.layout.simple_list_item_1,DepartmentLIST));

mAuth=FirebaseAuth.getInstance();
mdatabase=FirebaseDatabase.getInstance().getReference().child(“部门”;
mdatabase.addValueEventListener(新的ValueEventListener(){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
List Department=(ArrayList)dataSnapshot.getValue();
DepartmentLIST=Department.toArray(新字符串[Department.size()]);
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
Toast.makeText(CheckUpdate.this,databaseError.getMessage(),Toast.LENGTH_LONG.show();
}
});
setListAdapter(新阵列适配器)(此,
android.R.layout.simple_list_item_1,DepartmentLIST));
}

这是我用于它的代码。但它给出了null值。

(ArrayList)dataSnapshot.getValue()
不正确

我想您正在寻找
dataSnapshot.getChildren()
,和/或
dataSnapshot.getValue(String.class)

注意:Firebase UI库在这里可以帮助您