Я добавляю новый макет в RecycleView по нажатию кнопки «плюс» предыдущего макета. Сначала я добавляю пустые данные в класс модели и устанавливаю адаптер для одного элемента. После этого нажатия кнопки мне нужно добавить второй элемент и так далее.
Проблема есть. сначала это работает, и переработка просмотра с одним элементом отображается. при нажатии кнопки второй макет также добавляется ниже первого. но в третий раз, если я нажму на эту кнопку. это добавление нового элемента в верхнюю часть Recycleview. Мне нужно создать вертикальную иерархию.
Добавление первых данных в onCreate
var arrayList:ArrayList<SubjectModel> = ArrayList()
var model = SubjectModel()
arrayList.add(model)
var adapter = SubjectListAdapter(arrayList)
var layoutManager = LinearLayoutManager(this,LinearLayoutManager.VERTICAL,false)
rv_subject.layoutManager = layoutManager
rv_subject.adapter = adapter
И внутри адаптера. У меня есть кнопка плюс, которая добавляет новый элемент по вертикали.
holder.img_delete_subject.setTag(position);
holder.img_delete_subject.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (if it is plus ) {
holder.img_delete_subject.setImageResource(minus image);
data.add(data.size(),new SubjectModel());
notifyItemInserted((data.size() - 1));
} else {
data.remove(Integer.parseInt(view.getTag().toString()));
notifyItemRemoved(Integer.parseInt(view.getTag().toString()));
}
}
});