Как добавить элемент в постраничный списокAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как добавить элемент в постраничный список

Сообщение Anonymous »

Теперь я использую библиотеку подкачки Google во фрагменте чата.
Вот код внутри начального кода моего источника данных:
Disposable disposable = apiWrapper.getMessages(1, userId)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(messagesPagingResponse -> {
if (messagesPagingResponse.getData() != null && messagesPagingResponse.getData().getData() != null) {
callback.onResult(messagesPagingResponse.getData().getData(), null, messagesPagingResponse.getData().getNextPage());
}
}

, throwable -> {
Log.e("throwable", throwable.getLocalizedMessage());
});
compositeDisposable.add(disposable);

И во фрагменте чата наблюдаю список
viewModel.getLiveMessages().observe(this, this::setChatList);

private void setChatList(PagedList messages) {
this.messages = messages;
ChatPagingAdapter chatPagingAdapter = (ChatPagingAdapter) binding.messagesRecyclerView.getAdapter();
if (chatPagingAdapter != null){
chatPagingAdapter.submitList(this.messages);
}
}

Все работает хорошо, пока я не пытаюсь добавить новое сообщение в постраничный список, поэтому оно показывает мне эту ошибку
E/error: The exception could not be delivered to the consumer because it has already canceled/disposed the flow or the exception has nowhere to go to begin with. Further reading: https://github.com/ReactiveX/RxJava/wik ... r-handling | java.lang.UnsupportedOperationException

Когда я получаю новое сообщение, я пытаюсь добавить его как это
messages.add(0, message);


Подробнее здесь: https://stackoverflow.com/questions/588 ... paged-list
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»