Обновления RecyclerView только при прокрутке

У меня есть макет с RecyclerView с адаптером:

 public class SimpleRecyclerAdapter extends RecyclerView.Adapter<SimpleViewHolder> { protected List<JSONObject> data = new ArrayList<>(); public List<JSONObject> getData() { return data; } } 

Я обновляю его как:

 public void udpdateFromJson( JSONObject payload ) { JSONArray msgs = payload.optJSONArray( "messages" ); for( int ix = 0; null != msgs && ix < msgs.length(); ix++ ){ JSONObject o = msgs.optJSONObject( ix ); if( loadingMore ) adapter.getData().add( 1 + ix, o ); else adapter.getData().add( o ); } adapter.notifyDataSetChanged(); recyclerView.invalidate(); } 

Проблема в том, что я вижу новый элемент только при касании или прокрутке представления.

Что мне не хватает?

ОБНОВИТЬ:

Для исправления проблемы я заменил строки

 adapter.notifyDataSetChanged(); recyclerView.invalidate(); 

с

 adapter.notifyItemRangeInserted( loadingMore ? 1 : 0, msgs.length() ); 

И это сработало

Попробуйте указать позицию вставленного или удаленного элемента вместо notifyDataSetChanged(); , вы можете использовать

 notifyItemInserted(int pos); notifyItemRangeChanged(int start, int end);` 
Intereting Posts
Ароматы Gradle для Android с настраиваемыми наборами источников – какими должны быть файлы градиента? Название панели Collapsing не меняется при динамическом изменении? Извлечение элемента из списка массивов в Android? Как создать поток в Android NDK? Ошибка создания проекта в Android Studio "Ошибка: ресурс не найден, который соответствует указанному имени (в ____ со значением '@ drawable / <name>') Apache Cordova: Не удалось загрузить ресурс: сервер ответил статусом 404 (не найден) Способы прокси-сервера InputStream Идентификация, если приложение существует, если не идти в магазин Почему Gradle нужен файл settings.gradle? Использовать размеры в пользовательском стиле BitmapFactory.decodeStream вне памяти, несмотря на использование уменьшенного размера выборки Отправлять многоадресный аудиосигнал в rtsp, используя libstreaming для восходящего потока с устройства Android PagerAdapter.notifyDataSetChanged не обновляет фрагменты Проблема с драйвером GPU в Android Studio Как установить ограничение соответствия элементов, возвращаемых DynamoDB с помощью Java?