У меня есть список, в котором отображается список рецептов этого класса «Мне здесь не нужна вся информация»
private int Id;
private int Doctor_Id;
private String Note;
private String Prescription_Date;
private int Classification_Id;
private String Classification_Name;
private String Condition;
private String ClassificationIconUrl;
private String Patient_Name;
private List<Medicins> medicins;
public Prescriptions(int id, int doctor_Id, String note, String prescription_Date, int classification_Id, String classification_Name, String condition, String classificationIconUrl, String patient_Name, List<Medicins> medicins) {
Id = id;
Doctor_Id = doctor_Id;
Note = note;
Prescription_Date = prescription_Date;
Classification_Id = classification_Id;
Classification_Name = classification_Name;
Condition = condition;
ClassificationIconUrl = classificationIconUrl;
Patient_Name = patient_Name;
this.medicins = medicins;
}
public int getDoctor_Id() {
return Doctor_Id;
}
public String getCondition() {
return Condition;
}
public int getDoctorId() {
return Doctor_Id;
}
public int getId() {
return Id;
}
public String getNote() {
return Note;
}
public String getPrescription_Date() {
return Prescription_Date;
}
public int getClassification_Id() {
return Classification_Id;
}
public String getClassification_Name() {
return Classification_Name;
}
public String getClassificationIconUrl() {
return ClassificationIconUrl;
}
public String getPatient_Name() {
return Patient_Name;
}
public List<Medicins> getMedicins() {
return medicins;
}
и в каждом объекте рецепта есть список лекарств этого класса
private String Name;
private String IsBold;
private String IsChronic;
private Integer Pharmacy_Id=null;
public Medicins(String name, String isBold, String isChronic, Integer pharmacy_Id) {
Name = name;
IsBold = isBold;
IsChronic = isChronic;
Pharmacy_Id = pharmacy_Id;
}
public String getName() {
return Name;
}
public String getIsBold() {
return IsBold;
}
public String getIsChronic() {
return IsChronic;
}
public Integer getPharmacy_Id() {
return Pharmacy_Id;
}
, поэтому я сделал этот адаптер для представления этой информации в виде списка
private int resLayout;
private Context context;
private List<Prescriptions> prescList;
public PrescAdapter(Context context,int res,List<Prescriptions> preList){
super(context,res,preList);
this.context=context;
this.prescList=preList;
this.resLayout=res;
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
View v=convertView;
if(v==null){
LayoutInflater vi;
vi = LayoutInflater.from(context);
v = vi.inflate(resLayout, null);
}
Prescriptions Item=prescList.get(position);
if(Item!=null)
{
TextView Note=v.findViewById(R.id.noteTxt);
TextView boldMed=v.findViewById(R.id.boldMedTxt);
TextView med=v.findViewById(R.id.medi);
TextView Date =v.findViewById(R.id.dateTxt);
Note.setText(Item.getCondition());
Date.setText(Item.getPrescription_Date());
ImageView photo =v.findViewById(R.id.speImg);
photo.setBackgroundResource(getImage(Item.getClassification_Name()));
List<Medicins> medicins=Item.getMedicins();
for (Medicins m:medicins) {
if(m.getIsBold().equals("1"))boldMed.setText(boldMed.getText().toString()+"\n"+m.getName());
else med.setText(boldMed.getText().toString()+"\n"+m.getName());
}
}
return v;
}
public int getImage(String c){
int v;
switch (c){
case "Eye":v=R.drawable.ic_eye;break;
case "Ear":v=R.drawable.ic_ear;break;
case"Brain":v=R.drawable.ic_brain;break;
case"Sex":v=R.drawable.ic_sex;break;
case"Kidney":v=R.drawable.ic_kidney;break;
case"Stomach":v=R.drawable.ic_stomach;break;
case"Tooth":v=R.drawable.ic_tooth;break;
case"Lungs":v=R.drawable.ic_lungs;break;
case"Gland":v=R.drawable.ic_gland;break;
case"Heart":v=R.drawable.ic_heart;break;
case"Skin":v=R.drawable.ic_skin;break;
case"Bone":v=R.drawable.ic_bone2;break;
default:v=0;break;
}
return v;
в представлении постоянно отображаются лекарства случайным образом и метод получения представления вызывается трижды для одного и того же товара