Я работаю над проектом Firebase, в котором я хочу показать список всех пользователей из моей базы данных в представлении recycler, я использую интерфейс firebase для заполнения окна просмотра, но он ничего не показывает.сейчас я просто хочу показать имя пользователя.
извините за плохой английский.
Вот изображение моей базы данных, откуда я хочу получить данные. Изображение базы данных
Здесь, в методе onStart, я заполняю recylerView.
RecyclerView Activity
package com.inabdev.lapitchat;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import android.widget.Toast;
import com.firebase.ui.database.FirebaseRecyclerAdapter;
import com.firebase.ui.database.FirebaseRecyclerOptions;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.Query;
public class AllUsersActivity extends AppCompatActivity {
private Toolbar allUsers_toolbar;
private RecyclerView allUsersList;
private DatabaseReference mAllUsersDatabases;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_all_users);
allUsers_toolbar = (Toolbar) findViewById(R.id.all_users_appbar);
setSupportActionBar(allUsers_toolbar);
getSupportActionBar().setTitle("All Users");
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
mAllUsersDatabases = FirebaseDatabase.getInstance().getReference().child("users");
allUsersList = (RecyclerView) findViewById(R.id.users_list);
allUsersList.setHasFixedSize(true);
allUsersList.setLayoutManager(new LinearLayoutManager(AllUsersActivity.this));
}
@Override
protected void onStart() {
super.onStart();
Query query = FirebaseDatabase.getInstance().getReference().child("users");
FirebaseRecyclerOptions<AllUsersModel> options = new FirebaseRecyclerOptions.Builder<AllUsersModel>()
.setQuery(query, AllUsersModel.class)
.build();
FirebaseRecyclerAdapter<AllUsersModel, AllUserViewHolder> adapter = new FirebaseRecyclerAdapter<AllUsersModel, AllUserViewHolder>(options) {
@Override
protected void onBindViewHolder(@NonNull AllUserViewHolder holder, int position, @NonNull AllUsersModel model) {
holder.setName(model.getName());
Toast.makeText(AllUsersActivity.this, "Name is : " + model.getName(),Toast.LENGTH_SHORT).show();
}
@NonNull
@Override
public AllUserViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View view = LayoutInflater.from(viewGroup.getContext())
.inflate(R.layout.single_user_ui, viewGroup, false);
return new AllUserViewHolder(view);
}
};
adapter.startListening();
allUsersList.setAdapter(adapter);
}
}
class AllUserViewHolder extends RecyclerView.ViewHolder {
View mView;
public AllUserViewHolder(@NonNull View itemView) {
super(itemView);
mView = itemView;
}
public void setName(String name) {
TextView mUsername = (TextView) mView.findViewById(R.id.single_userName);
mUsername.setText(name);
}
}
Класс модели
package com.inabdev.lapitchat;
public class AllUsersModel {
private String image;
private String name;
private String status;
private String thumb_image;
public AllUsersModel() {
}
public AllUsersModel(String image, String name, String status) {
this.name = name;
this.status = status;
this.image = image;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
public String getThumb_image() {
return thumb_image;
}
public void setThumb_image(String thumb_image) {
this.thumb_image = thumb_image;
}
}