Advertisement
Guest User

HomeFragment

a guest
Feb 16th, 2019
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.48 KB | None | 0 0
  1. package com.blindnews.kimh2.blindnews;
  2.  
  3.  
  4. import android.os.Bundle;
  5. import android.support.v4.app.Fragment;
  6. import android.support.v7.widget.LinearLayoutManager;
  7. import android.support.v7.widget.RecyclerView;
  8. import android.view.LayoutInflater;
  9. import android.view.View;
  10. import android.view.ViewGroup;
  11.  
  12. import com.google.firebase.firestore.DocumentChange;
  13. import com.google.firebase.firestore.DocumentSnapshot;
  14. import com.google.firebase.firestore.EventListener;
  15. import com.google.firebase.firestore.FirebaseFirestore;
  16. import com.google.firebase.firestore.FirebaseFirestoreException;
  17. import com.google.firebase.firestore.QuerySnapshot;
  18.  
  19. import java.util.ArrayList;
  20. import java.util.List;
  21.  
  22. import javax.annotation.Nullable;
  23.  
  24.  
  25. /**
  26. * A simple {@link Fragment} subclass.
  27. */
  28. public class HomeFragment extends Fragment {
  29.  
  30. private RecyclerView blog_list_view;
  31. private List<BlogPost> blog_list;
  32. private FirebaseFirestore firebaseFirestore;
  33.  
  34. private BlogRecyclerAdapter blogRecyclerAdapter;
  35.  
  36. public HomeFragment() {
  37. // Required empty public constructor
  38. }
  39.  
  40.  
  41. @Override
  42. public View onCreateView(LayoutInflater inflater, ViewGroup container,
  43. Bundle savedInstanceState) {
  44.  
  45. View view = inflater.inflate(R.layout.fragment_home, container, false);
  46.  
  47. blog_list = new ArrayList<>();
  48. blog_list_view = view.findViewById(R.id.blog_list_view);
  49.  
  50. blogRecyclerAdapter = new BlogRecyclerAdapter(blog_list);
  51. blog_list_view.setLayoutManager(new LinearLayoutManager(container.getContext()));
  52. blog_list_view.setAdapter(blogRecyclerAdapter);
  53.  
  54. // Inflate the layout for this fragment
  55.  
  56.  
  57. firebaseFirestore = FirebaseFirestore.getInstance();
  58. firebaseFirestore.collection("articles").addSnapshotListener(new EventListener<QuerySnapshot>() {
  59. @Override
  60. public void onEvent(QuerySnapshot documentSnapshots, FirebaseFirestoreException e) {
  61.  
  62.  
  63. for (DocumentChange doc : documentSnapshots.getDocumentChanges()) {
  64.  
  65. if (doc.getType() == DocumentChange.Type.ADDED) {
  66.  
  67.  
  68. BlogPost blogPost = doc.getDocument().toObject(BlogPost.class);
  69. blog_list.add(blogPost);
  70.  
  71. blogRecyclerAdapter.notifyDataSetChanged();
  72. }
  73.  
  74.  
  75.  
  76. //}
  77. }
  78.  
  79. }
  80. });
  81.  
  82. return view;
  83. }
  84.  
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement