Приложение падает, когда я пытаюсь запустить этот код.Одна эта страница вызывает сбой.Помогите мне решить эту проблему: нет ошибки при компиляции, но запуск приложения завершился неудачей.
import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.widget.TextView;
import com.firebase.ui.database.FirebaseRecyclerAdapter;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.squareup.picasso.Picasso;
import de.hdodenhof.circleimageview.CircleImageView;
public class AllUsersActivity extends AppCompatActivity {
private Toolbar mToolBar;
private RecyclerView allUserList;
private DatabaseReference allDatabaseUserReference;
private FirebaseAuth mAuth;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// setContentView(.layout.activity_all_users);
setSupportActionBar(mToolBar);
getSupportActionBar().setTitle("All Users");
getSupportActionBar().setDisplayHomeAsUpEnabled(true );
allUserList = (RecyclerView)findViewById(R.id.all_users_list);
allUserList.setHasFixedSize(true);
allUserList.setLayoutManager(new LinearLayoutManager(this));
allDatabaseUserReference = FirebaseDatabase.getInstance().getReference().child("Users");
allDatabaseUserReference.keepSynced(true );
// mAuth =FirebaseAuth.getInstance();
}
@Override
protected void onStart() {
super.onStart();
FirebaseRecyclerAdapter<AllUsers,AllUsersViewHolder> firebaseRecyclerAdapter
= new FirebaseRecyclerAdapter<AllUsers, AllUsersViewHolder>
(
AllUsers.class,
R.layout.all_users_display_layout,
AllUsersViewHolder.class,
allDatabaseUserReference
)
{
@Override
protected void populateViewHolder(AllUsersViewHolder viewHolder, AllUsers model, int position)
{
viewHolder.setUser_name(model.getUser_name() );
// viewHolder.setUser_name(model.getUser_status());
// viewHolder.setUser_image(getApplicationContext(),model.getUser_image());
}
};
allUserList.setAdapter(firebaseRecyclerAdapter);
}
public static class AllUsersViewHolder extends RecyclerView.ViewHolder
{
View mView;
private final TextView name;
public AllUsersViewHolder(View itemView)
{
super(itemView );
mView =itemView;
name = (TextView) mView.findViewById(R.id.all_users_username);
}
public void setUser_name(String user_name)
{
// TextView name = (TextView) mView.findViewById(R.id.all_users_username);
name.setText(user_name);
}
public void setUser_status (String user_status)
{
TextView status =(TextView) mView.findViewById(R.id.all_user_status);
status.setText(user_status);
}
public void setUser_image(Context ctx,String user_image)
{
CircleImageView image =(CircleImageView) mView.findViewById(R.id.all_users_profile_image );
Picasso.get().load(user_image).into(image);
}
}
}
Из документации FirebaseUI :
Если выотображая список данных, вы, вероятно, захотите связать объекты чата с RecyclerView.Это означает реализацию пользовательского RecyclerView.Adapter и координацию обновлений с ChildEventListener.
Не бойтесь, FirebaseUI сделает все это за вас автоматически!