- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将 Mosby MVI 库用于一个演示应用程序,该应用程序在我的交互器中使用 Retrofit2 对 Restful API 执行简单的 CRUD 操作。我构建的 ViewStates 与示例应用程序非常相似,当 Retrofit 响应错误时包含 Throwable。在这种情况下,render()
函数会显示带有重试按钮的错误屏幕。单击重试按钮后,我想重新发出失败的 Intent 的最后一项。
我想在 Intent 中添加类似 retryWhen()
的内容,这当然只能由 onError()
触发。
是否有添加这种行为的简单方法?
最佳答案
实际上我使用 combineLatest()
自己解决了这个问题。retrySubject 不需要知道之前的 intent 的内容。
class MyViewActivity extends MviActivity<MyView, MyViewState> implements MyView {
PublishSubject<Boolean> retrySubject = ... ; // fires on retry Button click
...
@Override
public Observable<String> searchIntent(){
Observable<String> searchObservable = RxSearchView.queryTextChanges(searchView);
return Observable.combineLatest(searchObservable,retrySubject(searchString, retryClicked) -> searchString);
}
}
有一点需要注意。 combineLatest() 仅在所有 Observables 在订阅它们后发出第一个项目时才发出项目。这就是为什么我需要在 Mosby 完成订阅后初始化重试。
@Override
protected void onStart() {
super.onStart();
retrySubject.onNext(true);
}
另请在 Github 查看@sockeqwe 的回答
关于android - Mosby MVI - 如何重试 Intent ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42348038/
我尝试添加 Mosby library到我的宠物项目,但我不明白如何将它包含到项目中? 我尝试通过添加为模块-> 添加为 Gradle 项目来添加 mosby,但它无法编译。 请给我链接一些教程,如何
我正在寻找一种将基类添加到 mosby 的方法MVP Activity 。让我解释一下我需要什么。 通常在使用 mosby 时我们会声明这样的 Activity : public class Logi
我将 Mosby MVI 库用于一个演示应用程序,该应用程序在我的交互器中使用 Retrofit2 对 Restful API 执行简单的 CRUD 操作。我构建的 ViewStates 与示例应用程
我的演示者如下所示: // I'm retaining the presenter in a singleton instances map and reuse them // because the
我正在使用 Mosby 创建一个小应用程序。 该应用程序有一个我想要绑定(bind)的服务。我想正确的位置是在演示者中。但我实在不知道该怎么做。 我想要存档的是,当服务绑定(bind)时,我想调用它的
我只是创建了一个简单/空白的 fragment ,它应该使用 Mosby 框架。每次我使用 getView() 方法时都会收到错误消息: java.lang.ClassCastException: d
我正在开发一款 Android 应用。我附加的代码正在创建一个回收 View 。我们做的第一件事是创建一个异步任务,它将在 SQLite 数据库上获取数据并将其加载到适配器->recylcerview
我正在使用 Mosby Android 应用程序中的模型- View -Presenter 库。在一个特定的 View 中,我正在使用 Bottom Navigation用 Design Suppor
我正在尝试使用 Mosby 实现一个 MVP Android View(不是 Activity 或 fragment ),但是当在 Android Adaptor 中使用该 View 并在 onBin
我正在尝试在 Android 中实现 MVI 架构,但不想使用 Mosby 库。我想先学习基础知识。 我正在构建一个示例应用程序,当我按下按钮时, TextView 中的文本会发生变化(最初文本是其他
尽管在下游处理了错误(?),但我还是抛出了 OnErrorNotImplementedException 并且应用程序崩溃了。 异常 E/AndroidRuntime: FATAL EXCEPTION
我正在尝试理解 MvP 设计模式的概念。我的意思是,我明白了,这很容易。主要问题是最佳实现。我试图制作自己的 BaseActivity、BasePresenter 和 BaseView,只是为了从我的
我正在尝试在 Dagger 2 中使用 Mosby 的 MvpBasePresenter 设置一个 Base Presenter 我有以下基本组件: public interface BaseView
我是一名优秀的程序员,十分优秀!