С сервера приходит ответ такого плана:
[
{
"id": 1197309,
"building_id": 324505,
},
{
"id": 1197309,
"building_id": 324505,
}
]
Но в некоторых ситуациях приходит просто пустой массив
[]
При этом запрос завершается onSuccess
, но RV получается пустым.
вот так:
if (pojoList.size()==0 || pojoList.isEmpty() ){
textError();
}
не прокатывает
Вопрос как обработать ответ что бы поймать и вывести сообщение что даных нет.
private void getTom(String start, String end) {
String access_token = "access_token ";
progressBarTrain.setVisibility(View.VISIBLE);
disposable.add(
rxConnector.getTom().getTom(start, time, access_token)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribeWith(new DisposableSingleObserver<List<Responce>>() {
@Override
public void onSuccess(@NonNull List<Responce> pojoList) {
progressBar.setVisibility(View.GONE);
generateDataList(pojoList);
/*так не ловится
*if (pojoList.size()==0 || pojoList.isEmpty() ){
* textError();
* }
* а надо поймать
*/
Log.e(TAG, "onSuccess: " + pojoList.size());
cardView.setVisibility(View.GONE);
}
@Override
public void onError(Throwable e) {
Log.e(TAG, "onError: " + e.getMessage() + e.toString());
textError();
}
}));
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Как сделать чтобы валидация происходиладля всех полей сразу а не по одному
Дано число n (n > 1)Выведите строку, состоящую из простых чисел, меньших n