我在這裏遇到問題。 我有一個叫做「用戶」的Firebase數據庫子,裏面有其他孩子叫做「團隊」,我必須把這些內容帶到「團隊」中,並用FirebaseAdapter在ListView中展示他們。在適當時機採取Firebase數據聽衆
的FirebaseAdapter是這樣的:
FirebaseListAdapter<String> firebaseListAdapter = new FirebaseListAdapter<String>(
this,
String.class,
android.R.layout.simple_list_item_1,
//todo Conseguir exibir na lista, as equipes embedadas no usuário logado
mRef.child("users").child(idUser).child("teams")
)
正如你所看到的,我想以「團隊」一specifc子內,我搜索使用的「ID用戶」。 這個「idUser」是使用firebase中的數據快照獲取的,我在這裏搜索登錄到應用程序的用戶的ID。 的datasnapshot代碼如下:
user = mAuth.getCurrentUser().getEmail().toString();
mRef = FirebaseDatabase.getInstance().getReference();
Query query = mRef.child("usuarios").orderByChild("email").equalTo(user);
query.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot child : dataSnapshot.getChildren()){
idUser = child.getKey().toString();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
我在這裏的問題是,在「ID用戶」是被稱爲在FirebaseListAdapter的代碼部分查詢之前得到執行。所以我得到一個錯誤,因爲idUser是空的。我怎樣才能解決這個問題?