ここに問題があります。 私はFirebase Databaseの子を "users"と呼んでいます。その中に "teams"という名前の他の子があります。そして、 "teams"内のコンテンツをFirebaseAdapterでListViewに表示する必要があります。適切なタイミングでFirebase Data Listenerを使用してください
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")
)
、私は「idUser」を使用して検索すること、specifc子内部の「チーム」を取るたいです。 この「idUser」は、firebaseのdatasnapshotを使って取得されます。ここで、私はアプリにログオンしているユーザーの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) {
}
});
私の問題は、クエリが実行され得る前に、「idUserは」FirebaseListAdapterのコード部分に呼ばれている、です。 idUserが空であるため、エラーが発生します。私はこのような問題をどうやって解決できますか?