Я создаю приложение, в котором я пытаюсь получить список пользователей, сопоставив их назначение и статус проверки. Если статус проверки равен 0, тогда это будет не что иное, как если статус проверки равен 1 в базе данных (и также соответствует обозначению), то он должен выбрать этого пользователя из списка. Я попытался получить список, сопоставив обозначение пользователя, он работает правильно, но когда я пытаюсь сопоставить его статус проверки, приложение выходит из строя.
Мой код для получения списка.
mUsersList=(RecyclerView)findViewById(R.id.advrecyclerview);
mUsersList.setHasFixedSize(true);
mUsersList.setLayoutManager(new LinearLayoutManager(this));
mUsersDatabaseReference= FirebaseDatabase.getInstance().getReference().child("users");
mUsersDatabaseReference.keepSynced(true);
}
@Override
protected void onStart() {
super.onStart();
//String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
//mUsersDatabaseReference.child(uid).child("online").setValue("true");
//-------FIREBASE RECYCLE VIEW ADAPTER-------
mUsersDatabaseReference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
String verifiedStatus = dataSnapshot.child("VerificationStatus").getValue().toString();
if (verifiedStatus.equals("1")){
FirebaseRecyclerAdapter<Users, UserViewHolder> firebaseRecyclerAdapter=new FirebaseRecyclerAdapter<Users, UserViewHolder>(
Users.class,
R.layout.recycle_list_single_user,
AdvTalkActivity.UserViewHolder.class, mUsersDatabaseReference.orderByChild("designation").equalTo("ADVOCATE")){
@Override
protected void populateViewHolder(final AdvTalkActivity.UserViewHolder viewHolder, final Users users, final int position) {
viewHolder.setName(users.getName());
viewHolder.setStatus(users.getStatus());
viewHolder.setdesignation(users.getDesignation());
viewHolder.setImage(users.getThumb_image(), getApplicationContext());
final String user_id = getRef(position).getKey();
viewHolder.mView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent profileIntent = new Intent(AdvTalkActivity.this, ProfileActivity.class);
profileIntent.putExtra("user_id", user_id);
startActivity(profileIntent);
}
});
}
};
mUsersList.setAdapter(firebaseRecyclerAdapter);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
SweetToast.error(AdvTalkActivity.this, "Unknown Error...");
}
});
}
public static class UserViewHolder extends RecyclerView.ViewHolder{
View mView;
public UserViewHolder(View itemView) {
super(itemView);
mView = itemView;
}
public void setName(String name) {
TextView userNameView=(TextView)mView.findViewById(R.id.textViewSingleListName);
userNameView.setText(name);
}
public void setStatus(String status) {
TextView userStatusView=(TextView)mView.findViewById(R.id.textViewSingleListStatus);
userStatusView.setText(status);
}
public void setImage(String thumb_image, Context ctx) {
CircleImageView userImageView = (CircleImageView)mView.findViewById(R.id.circleImageViewUserImage);
//Log.e("thumb URL is--- ",thumb_image);
Picasso.with(ctx).load(thumb_image).placeholder(R.drawable.avtarr).into(userImageView);
}
public void setdesignation(String designation){
TextView userStatusView=(TextView)mView.findViewById(R.id.textViewSingleListDesignation);
userStatusView.setText(designation);
}
}
@Override
protected void onStop() {
//String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
//mUsersDatabaseReference.child(uid).child("online").setValue(ServerValue.TIMESTAMP);
super.onStop();
}
}
![enter image description here](https://i.stack.imgur.com/g55qa.png)