在提出这个问题之前我做了很多研究,我知道有很多这样的问题有一些答案,但没有一个能解决我的问题,所以我把这个问题作为一种绝望的行为。
我正在使用填充了Firebase数据库信息的数组列表来填充微调器。
微调器在我点击时显示信息,但不显示所选图标。
获取信息:
public static List<String> getStudentsList() {
final List<String> studentsList = new ArrayList<>();
studentsList.add("");
DatabaseReference reference = FirebaseDatabase.getInstance().getReference().child("Students");
reference.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot studentSnapshot: dataSnapshot.getChildren()) {
String studentName = studentSnapshot.getValue(Student.class).getStudentName();
studentsList.add(studentName);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
return studentsList;
}
设置微调器:
private void setUpStudentSpinner() {
List<String> studentsList = FirebaseUtils.getStudentsList();
ArrayAdapter<String> studentAdapter = new ArrayAdapter<>(getApplicationContext(),
android.R.layout.simple_spinner_dropdown_item, studentsList);
studentAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
Spinner studentSpinner = (Spinner) findViewById(R.id.spinnerLessonStudent);
studentSpinner.setAdapter(studentAdapter);
}
我在onCreate()上调用方法setUpStudentSpinner()。
希望有人可以帮助我。