Страницы

Поиск по вопросам

воскресенье, 2 июня 2019 г.

AlertDialog с помощью RxJava

С помощью AsyncTask при обработке массива данных мы легко можем вывести с помощью AlertDialog прогресс выполнения обработки.
Можно ли это сделать с помощью RxJava? Прошу вашего простейшего примера.
И как решается проблема поворота девайса при загрузке данных с сервера при помощи RxJava и отображения прогресса на AlertDialog?


Ответ

Самый простой способ это заюзать метод from:
List list = new ArrayList<>(); for (int i = 0; i < 100; i++) { list.add("item "+i); }
Observable.from(list) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Subscriber() { @Override public void onCompleted() { if(progress!=null && progress.isShowing()) progress.dismiss(); }
@Override public void onError(Throwable e) { if(progress!=null && progress.isShowing()) progress.dismiss(); }
@Override public void onNext(String s) { progress = ProgressDialog.show(this, "dialog title", "dialog message", true); } });

Комментариев нет:

Отправить комментарий