Я пытаюсь создать список RecyclerView
с параметром FirestoreRecycle
Когда я выбираю элемент счетчика, но список не отображается при выборе элемента
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_penilaian,container,false);
firebase = FirebaseFirestore.getInstance();
getfdb();
final LinearLayoutManager layoutManager = new LinearLayoutManager(this.getActivity());
layoutManager.setOrientation(LinearLayoutManager.VERTICAL);
mFirestorelist.setLayoutManager(layoutManager);
return v;
}
private void setuprecycleview() {
Query query = firebase.collection("kelas").document(documentid).collection("siswa").orderBy("nama", Query.Direction.ASCENDING);
FirestoreRecyclerOptions<kelas> options = new FirestoreRecyclerOptions.Builder<kelas>()
.setQuery(query, kelas.class).build();
adapter = new KelasAdapter(options);
mFirestorelist.setHasFixedSize(true);
mFirestorelist.setAdapter(adapter);
}
public void getfdb(){
firebase.collection("kelas").whereEqualTo("email",email_txt)
.addSnapshotListener(new EventListener<QuerySnapshot>() {
@Override
public void onEvent(@Nullable QuerySnapshot queryDocumentSnapshots, @Nullable FirebaseFirestoreException e) {
if(e != null){
Log.w(TAG, "Listen failed.", e);
return;
}
for(DocumentSnapshot documentSnapshot:queryDocumentSnapshots){
arraykelas.add(documentSnapshot.get("kelas").toString());
}
kelasarrayadapter = new ArrayAdapter(getContext(),android.R.layout.simple_spinner_dropdown_item,arraykelas);
kelasspinner.setAdapter(kelasarrayadapter);
kelasspinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String find = kelasspinner.getSelectedItem().toString();
firebase.collection("kelas").whereEqualTo("kelas",find).get()
.addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if(task.isSuccessful()){
if(task.getResult().size()>0){
for(QueryDocumentSnapshot documentSnapshot : task.getResult()){
documentid = documentSnapshot.getId();
}
Log.d(TAG,documentid);
setuprecycleview();
}
}
}
});
}
@Override
public void onNothingSelected(AdapterView<?> parent) {}
});
}
});
}
}
Это мой адаптер
@NonNull
@Override
public kelasHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.kelas_nilai,parent,false);
return new kelasHolder(v);
}
Я сделал его адаптером .startlistening()
в OnStart()
и OnStop()
, но в нем указано нулевое предпочтение.
- Я удаляю некоторый код, где я думаю, что don не нужно решать мой код