我正在尝试根据其状态对应用程序中的任务进行分类。状态可以是待处理或完成。这些选项位于微调器中。在Firestore DB上检查任务的状态,并根据选择的选项显示任务。但是,我选择了一个选项,它没有显示任何任务。这是代码段:
ArrayAdapter<String> myAdapt1 = new ArrayAdapter<String>(Tasks.this,
android.R.layout.simple_list_item_1, getResources().getStringArray(R.array.status));
myAdapt.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
filter.setAdapter(myAdapt1);
filter.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
if (parent.getItemAtPosition(position).equals(" ")) {
//do nothing;
} else {
String item = parent.getItemAtPosition(position).toString();
if (parent.getItemAtPosition(position).equals("Pending")) {
sortPending();
}
if (parent.getItemAtPosition(position).equals("Complete")) {
sortComplete();
}
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
public void sortPending(){
Query query = taskRef.whereEqualTo("status", "Pending");
FirestoreRecyclerOptions<TaskList> options = new FirestoreRecyclerOptions.Builder<TaskList>()
.setQuery(query, TaskList.class)
.build();
adapter = new TaskAdapter(options);
RecyclerView recyclerView = findViewById(R.id.recyclerView);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setAdapter(adapter);
}
public void sortComplete(){
Query query1 = taskRef.whereEqualTo("status", "Complete");
FirestoreRecyclerOptions<TaskList> options1 = new FirestoreRecyclerOptions.Builder<TaskList>()
.setQuery(query1, TaskList.class)
.build();
adapter = new TaskAdapter(options1);
RecyclerView recyclerView = findViewById(R.id.recyclerView);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setAdapter(adapter);
}