Как реализовать viewholder при динамическом заполнении linearlayout view элементами?
Пробовал так:
private static class ProgramHolder{
TextView textName, textSecondName, textSpecName;
}
и смо заполнение
for (int d = 0; d < doctors.size(); d++) {
if (pHolder == null) {
pHolder = new ProgramHolder();
layerDoctors = mLayoutInflater.inflate(R.layout.item_doctor, null);
pHolder.textName = (TextView) layerDoctors.findViewById(R.id.textName);
pHolder.textSecondName = (TextView) layerDoctors.findViewById(R.id.textSecondName);
pHolder.textSpecName = (TextView) layerDoctors.findViewById(R.id.textSpecName);
layerDoctors.setTag(pHolder);
}
Doctor doctor = doctors.get(d);
pHolder.textName.setText(doctor.getSecond_name());
pHolder.textSecondName.setText(doctor.getFirst_name() + " " + doctor.getMiddle_name());
pHolder.textSpecName.setText(doctor.getSpec_name());
linDoctors.addView(layerDoctors);
}
Но получаю ошибку
The specified child already has a parent. You must call removeView() on the child's parent first.
Как бороться с этим или как будет правильно? Нужно в linearlayout добавить view элементов порядка 200. Поэтому хотелось облегчить заполнение, чтобы не создавать массив view на 200 элементов