ListView не отображает текст на элементах - PullRequest
0 голосов
/ 21 июня 2019

Я пытаюсь реализовать ListView, который будет отображать имена некоторых документов, хранящихся в коллекции в проекте Cloud Firestore.Тем не менее, он отображает только деления на количество элементов в списке.Каждое подразделение кликабельно, но в нем нет текста.

  1. Класс объекта:
public class stPopulation {

    public String subtopic;

    public stPopulation(){}

    public stPopulation(String subtopic){

        this.subtopic = subtopic;
    }

    public String getSubtopic(){

        return subtopic;

    }
}
Список Адаптер
public class ListAdapter extends ArrayAdapter<stPopulation> {

    public ListAdapter(Context context, ArrayList<stPopulation> object) {
        super(context, 0, object);
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {

        if (convertView == null){

            convertView = LayoutInflater.from(getContext()).inflate(R.layout.item_subtopic, parent, false);

        }

        stPopulation dir = getItem(position);

        TextView tvSubtopic = convertView.findViewById(R.id.tvSubtopic);

        tvSubtopic.setText(dir.getSubtopic());
        tvSubtopic.setTextColor(Color.RED);
        return convertView;

    }
}

Activity

public class SubTopicsActivity extends AppCompatActivity {

    private ListView sListView;
    TextView tvSubTopic;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_sub_topics);

        final FirebaseFirestore subTopicsDatabase = FirebaseFirestore.getInstance();
        sListView = findViewById(R.id.list_view);

        subTopicsDatabase.getInstance().collection("examTopics").get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                    @Override
                    public void onComplete(@NonNull Task<QuerySnapshot> task) {

                        ArrayList<stPopulation> subtopicsList = new ArrayList<>();

                        if (task.isSuccessful()) {

                            for (QueryDocumentSnapshot document : task.getResult()) {

                                stPopulation subtopic = document.toObject(stPopulation.class);
                                subtopicsList.add(subtopic);

                            }

                            ListAdapter adapter = new ListAdapter(SubTopicsActivity.this, subtopicsList);
                            sListView.setAdapter(adapter);
                            adapter.notifyDataSetChanged();

                        } else {

                        }
                    }
                });
    }
}

Я не получаю никаких сообщений об ошибках, программа работает нормально, просто текст (полученный из имен документов в firestore) не хочет отображаться наListView.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...