Заполнение TextView логическим значением, полученным с помощью метода получения - PullRequest
0 голосов
/ 13 февраля 2019

Я разработал приложение для Android, которое подключено к базе данных Firebase.Я пытаюсь отобразить некоторые записи из объекта базы данных в ListView, но я не уверен, как передать логическое значение.В настоящее время у меня есть класс GroupVaccination, который имеет Getters для всей информации:

public class GroupVaccination {
    String vaccinationGroupID;
    String vaccinationGroupNumber;
    String vaccinationID;
    String vaccinationDrug;
    String vaccinationAdmin;
    String vaccinationDosage;
    String vaccinationDate;
    String vaccinationNotes;
    Boolean allVaccinated;

    public GroupVaccination(){

    }

    public GroupVaccination(String vaccinationGroupID, String vaccinationGroupNumber, String vaccinationID, String vaccinationDrug,
                       String vaccinationAdmin, String vaccinationDosage, String vaccinationDate, String vaccinationNotes, Boolean allVaccinated){
        this.vaccinationGroupID = vaccinationGroupID;
        this.vaccinationGroupNumber = vaccinationGroupNumber;
        this.vaccinationID = vaccinationID;
        this.vaccinationDrug = vaccinationDrug;
        this.vaccinationAdmin = vaccinationAdmin;
        this.vaccinationDosage = vaccinationDosage;
        this.vaccinationDate = vaccinationDate;
        this.vaccinationNotes = vaccinationNotes;
        this.allVaccinated = allVaccinated;
    }

    public String getVaccinationGroupID() {   return vaccinationGroupID;    }

    public String getVaccinationGroupNumber() {   return vaccinationGroupNumber;    }

    public String getVaccinationID() {  return vaccinationID;    }

    public String getVaccinationDrug() { return vaccinationDrug; }

    public String getVaccinationAdmin() { return  vaccinationAdmin;}

    public String getVaccinationDosage() {return vaccinationDosage;}

    public String getVaccinationDate() {return  vaccinationDate; }

    public String getVaccinationNotes() {return vaccinationNotes; }

    public Boolean getAllVaccinated() {return allVaccinated; }

И я использую класс InfoAdapter для заполнения ListView соответственно:

public class GroupVaccinationInfoAdapter extends ArrayAdapter<GroupVaccination> {
    private Activity context;
    private List<GroupVaccination> groupVaccinationList;

public GroupVaccinationInfoAdapter(Activity context, List<GroupVaccination>groupVaccinationList){
    super(context, R.layout.group_vaccination_list_view,groupVaccinationList);
    this.context = context;
    this.groupVaccinationList = groupVaccinationList;
}

@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
    LayoutInflater inflater = context.getLayoutInflater();
    View listView = inflater.inflate(R.layout.group_vaccination_list_view, null, true);

    TextView vaccinationDrug = (TextView)listView.findViewById(R.id.drug);
    TextView vaccinationDosage = (TextView)listView.findViewById(R.id.dosage);
    TextView vaccinationDate = (TextView)listView.findViewById(R.id.date);
    TextView vaccinationAdmin = (TextView)listView.findViewById(R.id.administrator);
    TextView vaccinationID = (TextView) listView.findViewById(R.id.groupVaccinationID);
    TextView vaccinationGroupNumber = (TextView)listView.findViewById(R.id.groupNumber);
    TextView vaccinationNotes = (TextView)listView.findViewById(R.id.notes);
    TextView allVaccinatedTrueFalse = (TextView)listView.findViewById(R.id.allVaccinatedTrueFalse);



    GroupVaccination groupVaccination = groupVaccinationList.get(position);
    vaccinationDrug.setText(groupVaccination.getVaccinationDrug());
    vaccinationDosage.setText(groupVaccination.getVaccinationDosage());
    vaccinationDate.setText(groupVaccination.getVaccinationDate());
    vaccinationID.setText(groupVaccination.getVaccinationID());
    vaccinationAdmin.setText(groupVaccination.getVaccinationAdmin());
    vaccinationGroupNumber.setText(groupVaccination.getVaccinationGroupNumber());
    vaccinationNotes.setText(groupVaccination.getVaccinationNotes());
allVaccinatedTrueFalse.setText(String.valueOf(Boolean groupVaccination.getAllVaccinated));

    return listView;
}

У меня ошибкакогда я пытаюсь преобразовать Boolean в String для allVaccinatedTrueFalse.setText.Я предполагаю, что этот путь неправильный, поэтому любая помощь будет оценена!Дайте мне знать, если потребуется дополнительная информация.Спасибо!

1 Ответ

0 голосов
/ 13 февраля 2019

Чтобы решить эту проблему, измените следующую строку кода:

allVaccinatedTrueFalse.setText(String.valueOf(Boolean groupVaccination.getAllVaccinated));

на

allVaccinatedTrueFalse.setText(String.valueOf(groupVaccination.getAllVaccinated()));
...