Articles of rx java2

Подождите, пока два наблюдаемых испускают истину

У меня есть Fragment контейнера, который содержит два Fragments на ViewPager . Я хочу подождать, пока эти два Fragments будут готовы для получения некоторых данных. Я создал класс ViewPagerFragment который содержит этот BehaviorSubject: val viewReady : BehaviorSubject<Boolean> = BehaviorSubject.createDefault(false) @CallSuper override fun onViewCreated(view: View?, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) viewReady.onNext(true) } Я подписываюсь на это […]

RxJava и дооснащение с использованием Kotlin

Как создать общий класс для вызова api с использованием RxJava и Retrofit в Котлине ?

RxJava обрабатывает несколько обратных вызовов внутри наблюдаемого

У меня есть Observable который имеет несколько обратных вызовов внутри него. Первый выбирает список с сервера, а второй – это обратный вызов изменения элемента, который указывает, изменился ли элемент в списке. Это моя текущая реализация: Flowable.create({ emitter -> val offlineManager = OfflineManager.getInstance(context) offlineManager.listOfflineRegions(object : OfflineManager.ListOfflineRegionsCallback { override fun onList(offlineRegions: Array<OfflineRegion>) { offlineRegionsFetch(offlineRegions, emitter) } override […]

Как обрабатывать обработку ошибок в одном месте в rxjava с помощью обертки

Привет, я сделал CallbackWrapper для обработки ошибок в одном месте в rxjava . abstract class CallbackWrapper<T : BaseResponse> : DisposableObserver<T>() { protected abstract fun onSuccess(t: T) override fun onNext(t: T) { onSuccess(t) } override fun onError(e: Throwable) { when (e) { is HttpException -> { val responseBody = (e as HttpException).response().errorBody() responseBody?.let { // todo […]

Поиск с помощью RxJava не работает

Я пытаюсь сделать простой пользовательский интерфейс поиска, где смена текста вызывает поиск в службе и которая сопоставляется с ViewState. Казалось бы, легко, но следующий код не работает: queryText.filter { it.length > 3 } .switchMap { service.search(it) } .onErrorReturn { SearchResponse(null, it.message) } .map { SearchViewState(items = it.items, error = it.error) } .startWith { SearchViewState(loading = […]

RxJava 2 требует другого типа возвращаемого типа, чем RxJava 1 (Kotlin)

Я обновляю свой проект от RxJava 1 до RxJava 2. У меня есть этот метод расширения (я использую Kotlin): fun <T : DatabaseModel> Observable<DataSnapshot?>.toObjectObservable(type: Class<T>): Observable<T> { return this.map { if (it == null) { return@map null } val data = it.getValue(type) data?.setId(it.key) data } } Когда я использовал RxJava 1, все было в порядке. […]

Kotlin и RxJava2 zip operator – Ни одна из следующих функций не может быть вызвана с предоставленными аргументами

У меня возникла проблема с написанием .zip Observable в Kotlin с использованием Android Studio 3.0 IDE. Вот мой код: internal var updateStringEventsSubject = PublishSubject.create<String>() internal var updateIntEventsSubject = PublishSubject.create<Int>() internal var triggerSave = PublishSubject.create<Boolean>() internal var triggerStopAndSave = PublishSubject.create<Boolean>() internal var normalSaveTrigger = triggerSave.debounce(30, TimeUnit.SECONDS) internal var trigger = Observable.merge(normalSaveTrigger, triggerStopAndSave) private fun saveEvents( strings: […]

RxJava Observable.create обертывание наблюдаемых подписки

Я использовал Observable.create, чтобы я мог уведомить абонента, когда были доступны определенные данные. Я немного не согласен с подпиской на наблюдаемые внутри моего метода создания. Являются ли эти вложенные подписки для меня какой-то проблемой? Я не совсем знаком с созданием наблюдаемых с помощью Observable.create, поэтому я хотел убедиться, что я не делаю ничего необычного или […]

Флажок в Recycler Элемент View, если установлен в true, проверяется на наличие ложных срабатываний

Я использую RxJava2, Kotlin и Room для моего примера. Вот адаптер для заполнения моих элементов в recyclerView: class ShoppingListDetailsAdapter(val list: ArrayList<ShoppingListElementItem>, val context: Context, val listener: ShoppingItemCheckboxListener, val isArchived: Boolean) : RecyclerView.Adapter<ShoppingListDetailsAdapter.ViewHolder>() { override fun getItemCount(): Int { return list.count() } override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int): ViewHolder { val itemView = LayoutInflater.from(parent?.getContext()) .inflate(R.layout.item_shopping_list_element, parent, […]

Используйте тип блока kotlin (или любой другой объект) в макете Android

Взгляд в тип Unit Kotlin, который представляет собой object основном представляющий void Java. В некоторых случаях я хотел бы использовать PublishSubject<Unit> в привязке данных PublishSubject<Unit> чтобы в основном просто сигнализировать щелчок. Андроид xml выглядит так: <android.support.v7.widget.AppCompatButton android:layout_width="148dp" android:layout_height="60dp" android:onClick="@{() -> viewModel.navigateSubject.onNext(Unit)}" /> В layout я представляю тип: <layout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"> <data> <variable name="viewModel" type="com.example.TestViewModel"/> […]

Intereting Posts
Лучший способ внедрения шаблона посетителя в Котлин Статус состояния Vault для UNONSUMED / CONSUMED Лучший способ применить преобразование к каждому элементу в списке одновременно в Котлине Использование данных Amazon AWS Cognito `. Well-known / jwks.json` не позволяет base64 декодировать некоторые поля Весенняя загрузка и спящий режим. Управление сеансом Какова цель по умолчанию для аннотации при аннотации свойства в Котлине? Единичное тестирование Rxjava наблюдаемых, которые имеют задержку Слушатель не вызывается, когда запрашивается диалоговое окно «Обновление сервисов Google Play» Как решить: Ошибка: выполнение выполнено для задачи ': app: kaptDebugKotlin'? kotlin map based properties и Jackson не работают – делегируйте точки на другую карту, чтобы свойство карты Получение доступа к экземпляру в функции обертки Firebase возвращает экземпляр null в классе Helper DSL-подобный OnClick-прослушиватель для пользовательского представления с использованием kotlin в Android Обобщить метод с нулевыми аргументами и возвращаемым типом Как преобразовать, если выражение в, когда в Kotlin