HarshBarash

Untitled

May 6th, 2021
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.84 KB | None | 0 0
  1. public class ListActivity extends AppCompatActivity {
  2.  
  3.     List<Collection> collectionList = new ArrayList<>();
  4.     RecyclerView mRecyclerView;
  5.     RecyclerView.LayoutManager layoutManager;
  6.  
  7.     FloatingActionButton mAddBtn;
  8.  
  9.     FirebaseFirestore db;
  10.  
  11.     CustomAdapter adapter;
  12.  
  13.     ProgressDialog pd;
  14.  
  15.     @Override
  16.     protected void onCreate (Bundle savedInstanceState) {
  17.         super.onCreate(savedInstanceState);
  18.         setContentView(R.layout.activity_list);
  19.  
  20.         db = FirebaseFirestore.getInstance();
  21.  
  22.         mRecyclerView = findViewById(R.id.recycler_view);
  23.         mAddBtn = findViewById(R.id.addBtn);
  24.  
  25.  
  26.         //       свойства просмотра recycler view
  27.         mRecyclerView.setHasFixedSize(true);
  28.         layoutManager = new LinearLayoutManager(this);
  29.         mRecyclerView.setLayoutManager(layoutManager);
  30.  
  31.         pd = new ProgressDialog(this);
  32.  
  33.         showData();
  34.  
  35.         mAddBtn.setOnClickListener(new View.OnClickListener() {
  36.             @Override
  37.             public void onClick(View v) {
  38.                 startActivity(new Intent(ListActivity.this, Define.class));
  39.                 finish();
  40.             }
  41.         });
  42.  
  43.  
  44.     }
  45.  
  46.     //        показ recyclerView
  47.     private void showData() {
  48.  
  49.  
  50.         pd.setTitle("Loading Data...");
  51.         pd.show();
  52.  
  53.         db.collection("Documents").get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
  54.             @Override
  55.             public void onComplete(@NonNull @NotNull Task<QuerySnapshot> task) {
  56.                 if (pd != null && pd.isShowing()) {
  57.                 pd.dismiss(); }
  58. //                в удачном случае здесь появяятся файлы. Но нельзя просто так взять и вывести данные 👌
  59.                 for (DocumentSnapshot doc: task.getResult()) {
  60.                     Collection collection = new Collection(doc.getString("id"),
  61.                     doc.getString("title"));
  62. //                    doc.getString() #todo description
  63.                     collectionList.add(collection);
  64.                 }
  65. //               TODO переписать участок кода (чтобы создание не было привязано к готовому листу)
  66. //               CustomAdapter adapter = nre CustomAdapter()  recyclerView.setAdapter(adapter) см. Intellij
  67.  
  68.                 adapter = new CustomAdapter(ListActivity.this, collectionList);
  69.                 mRecyclerView.setAdapter(adapter);
  70.                
  71.  
  72.             }
  73.         }).addOnFailureListener(new OnFailureListener() {
  74.             @Override
  75.             public void onFailure(@NonNull @NotNull Exception e) {
  76.                 pd.dismiss();
  77.  
  78.                 Toast.makeText(ListActivity.this, e.getMessage(), Toast.LENGTH_SHORT).show();
  79.  
  80.             }
  81.         });
  82.     }
  83. }
Advertisement
Add Comment
Please, Sign In to add comment