I am trying to display a list of files from firebase realtime database but i want check if no file exist in database so i can display a textView with a text to indicate to user that no file exist in database yet.
i have tried display the files but when no file exist in database, the textView does not display meaning am doing something wrong in the code. Below is what i tried but it's not working.Please what am i doing wrong?
public void displayDocuments(){
// display progressbar
progressBar.setVisibility(View.VISIBLE);
dBRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
// clear list
archivedDocumentsList.clear();
for(DataSnapshot snapshot: dataSnapshot.getChildren()){
Documents documents = snapshot.getValue(Documents.class);
if(documents == null){
// hides the recyclerView and displays the textView
recyclerView.setVisibility(View.GONE);
// sets visibility to visible
tv_no_archived_document.setVisibility(View.VISIBLE);
}
else {
// hides the textView and displays the recyclerView
tv_no_archived_document.setVisibility(View.GONE);
// sets visibility to visible
recyclerView.setVisibility(View.VISIBLE);
// adds to list
archivedDocumentsList.add(archivedDocuments);
}
}
/*if(!dataSnapshot.exists()){
// hides the recyclerView and displays the textView
recyclerView.setVisibility(View.GONE);
// sets visibility to visible
tv_no_archived_document.setVisibility(View.VISIBLE);
}
*/
// notify adapter of changes
adapterArchivedDocuments.notifyDataSetChanged();
// hides progressbar
progressBar.setVisibility(View.GONE);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
// hides progressbar
progressBar.setVisibility(View.GONE);
// display Error message
Snackbar.make(constraintLayout,databaseError.getMessage(),Snackbar.LENGTH_LONG).show();
}
});
}