Как сделать добавление в recycler view нового элемента без обновления списка?

Вам понадобится использовать методы notifyItemInserted() и notifyItemRangeChanged() класса RecyclerView.Adapter.

Прежде всего, убедитесь, что ваш адаптер (RecyclerView.Adapter) правильно настроен и работает с вашим RecyclerView. Если у вас уже есть массив данных, который вы хотите отобразить в RecyclerView, создайте адаптер, передав этот массив данных в его конструктор.

Определим необходимые переменные:

private List<MyModel> mList; // Ваш список данных
private RecyclerView mRecyclerView; // Ваш RecyclerView
private MyAdapter mAdapter; // Ваш адаптер

Инициализируйте RecyclerView и адаптер:

mRecyclerView = findViewById(R.id.recyclerView);
mAdapter = new MyAdapter(mList);
mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
mRecyclerView.setAdapter(mAdapter);

Теперь, когда мы настроили RecyclerView и адаптер, мы можем добавить новый элемент в список данных без обновления всего списка. Для этого используйте следующий код:

mList.add(newItem); // Добавляем новый элемент в список данных
mAdapter.notifyItemInserted(mList.size() - 1); // Уведомляем адаптер о добавлении нового элемента

// Если нужно обновить позиции элементов списка выше добавленного элемента (для корректного отображения анимации)
mAdapter.notifyItemRangeChanged(0, mList.size());

В коде выше мы добавляем новый элемент в список данных с помощью метода add() и передаем индекс добавленного элемента в метод notifyItemInserted(), чтобы адаптер уведомил RecyclerView об изменении.

Затем, если вам нужно обновить позиции элементов списка выше добавленного элемента (например, для корректного отображения анимации добавления), используйте метод notifyItemRangeChanged(), передав индексы начального и конечного элементов, которые нужно обновить.

Таким образом, вы сможете добавить новый элемент в RecyclerView без необходимости обновлять весь список и обеспечить корректное отображение добавленного элемента.