I am making a clickable calendar with alert dialog, it is running well, but when I click the date one the calendar it only show gray screen like this this is when a date is not clicked and this happen if i click a date plus it doesn't display anything from database, my database is not empty, here is my code on alert dialog:
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.app.AppCompatDialogFragment;
import androidx.fragment.app.DialogFragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.ArrayList;
public class Dialog extends AppCompatDialogFragment {
RecyclerView recyclerView;
DatabaseReference database;
dialogAdapter dialogAdapter;
ArrayList<Reminder> list;
public View onCreateDialog(Bundle savedInstanceState, ViewGroup container, LayoutInflater inflater) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
View roortView = inflater.inflate(R.layout.popup_window, container);
//Retrieve
recyclerView = (RecyclerView) roortView.findViewById(R.id.userList);
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
database = FirebaseDatabase.getInstance().getReference("Reminder");
list = new ArrayList<Reminder>();
dialogAdapter = new dialogAdapter(this.getActivity(), list);
recyclerView.setAdapter(dialogAdapter);
database.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for (DataSnapshot dataSnapshot : snapshot.getChildren()) {
Reminder reminder = dataSnapshot.getValue(Reminder.class);
list.add(reminder);
}
dialogAdapter.notifyDataSetChanged();
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
return roortView;
}
}
It doesn't show any error on the logcat so I don't know what i did wrong