2017-02-15 17 views
0

私はfirebaseデータベースからいくつかのデータを取得し、それをrecyclerviewに移そうとしています。クエリの背後にあるロジックは、現在のユーザーと同じ異性のユーザーを同じホールで表示することです。例現在のユーザーが「男の子」であり、「レゴン」ホールにある場合、データベースからレゴンホール内の「女性」を使用してrecyclerviewを作成します。Firebaseでrecyclerviewに複数のクエリを設定するにはどうすればよいですか?

ユーザーデータベース:

これは私がやろうとしていますが、私はあなたがここで間違っていると思う

@Override 
protected void onStart() { 
     super.onStart(); 

    final String user_id = firebaseAuth.getCurrentUser().getUid(); 
    final User user = new User(); 

    final String halls = user.getHalls(); 


    databaseReference.addValueEventListener(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) 

     { 

      if(dataSnapshot.child("Male").hasChild(user_id)){ 


       query = databaseReference.child("Female").orderByChild("halls").equalTo(halls); 
      } 
      else{ 

       query = databaseReference.child("Male").orderByChild("halls").equalTo(halls); 
      } 
     } 
     @Override 
     public void onCancelled(DatabaseError databaseError){ 

     } 
    }); 

     FirebaseRecyclerAdapter<User, UserViewholder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<User, UserViewholder>(
     User.class, 
     R.layout.users_row, 
     UserViewholder.class, 
     query 

     ) { 
@Override 
protected void populateViewHolder(UserViewholder viewHolder, User model, int position) { 
     viewHolder.setUsername(model.getUsername()); 
     viewHolder.setLevels(model.getLevels()); 
     viewHolder.setDownloadUrl(getApplicationContext(), model.getDownloadUrl()); 
     } 

     }; 

     users2.setAdapter(firebaseRecyclerAdapter); 

     } 

答えて

0

が動作していないものです

final User user = new User(); 
final String halls = user.getHalls(); 

常にhalls復帰理由null

私はいくつかの情報のnot..Itを含む作成したばかりのクラスが「firebaseUser」@PhanヴァンたLiNHされていないで、「ユーザー」をお願い

User user = firebaseAuth.getCurrentUser(); 
final String halls = user.getHalls(); 
+0

にそれを変更する必要があります –

関連する問題