Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class UsersActivity extends AppCompatActivity {
- //Layout
- private Toolbar mToolbar;
- private RecyclerView mUserList;
- //Firebase
- private DatabaseReference mUsersDatabase;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_users);
- //Layour
- mToolbar = (Toolbar) findViewById(R.id.users_toolbar);
- setSupportActionBar(mToolbar);
- getSupportActionBar().setTitle("All Users");
- getSupportActionBar().setDisplayHomeAsUpEnabled(true);
- mUserList = (RecyclerView) findViewById(R.id.users_list);
- // mUserList.setHasFixedSize(true);
- mUserList.setLayoutManager(new LinearLayoutManager(this));
- //Firebase
- mUsersDatabase = FirebaseDatabase.getInstance().getReference().child("Users");
- }
- @Override
- protected void onStart() {
- super.onStart();
- Log.v("=====> IN ON START", "in onstart");
- Query query = mUsersDatabase
- .limitToLast(20);
- FirebaseRecyclerOptions<Users> options =
- new FirebaseRecyclerOptions.Builder<Users>()
- .setQuery(query, Users.class)
- .build();
- //Pass model + viewholder
- //Pass model / layout of item / ViewHolder / reference to Databace place
- FirebaseRecyclerAdapter firebaseRecyclerAdapter = new FirebaseRecyclerAdapter
- <Users, UsersViewHolder>(options) {
- @Override
- protected void onBindViewHolder(@NonNull UsersViewHolder holder, int position, @NonNull Users model) {
- String s = model.getName().toString();
- Log.v("=====> ", " " + s);
- holder.setName(model.getName());
- holder.setStatus(model.getStatus());
- holder.setImage(model.getImage());
- }
- @Override
- public UsersViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
- View view = LayoutInflater.from(parent.getContext())
- .inflate(R.layout.user_item, parent, false);
- Log.v("=====> ", "Creating View Holder ");
- return new UsersViewHolder(view);
- }
- };
- mUserList.setAdapter(firebaseRecyclerAdapter);
- firebaseRecyclerAdapter.startListening();
- }
- public static class UsersViewHolder extends RecyclerView.ViewHolder {
- View view;
- Context c;
- public UsersViewHolder(View itemView) {
- super(itemView);
- view = itemView;
- }
- public void setName(String name) {
- TextView txtUserName = (TextView) view.findViewById(R.id.user_single_name);
- txtUserName.setText(name);
- }
- public void setStatus(String status) {
- TextView txtstatus = (TextView) view.findViewById(R.id.user_single_status);
- txtstatus.setText(status);
- }
- public void setImage(final String image) {
- final CircleImageView img = (CircleImageView) view.findViewById(R.id.user_single_img);;
- // Picasso.with(c).load(image).into(img);
- Picasso.with(c).load(image).networkPolicy(NetworkPolicy.OFFLINE).into(img, new Callback() {
- @Override
- public void onSuccess() {
- // Offline Download
- }
- @Override
- public void onError() {
- Picasso.with(c).load(image).into(img);
- }
- });
- }
- public View getView() {
- return view;
- }
- }
- }
Add Comment
Please, Sign In to add comment