问题标签 [mosby]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
65 浏览

java - 是否可以使用 Mosby 在 Activity 中使用 Fragment 作为 MvpView

是否可以在使用 Mosby 的 Activity 中使用 Fragment 作为 MvpView?

例如,这是Google 的 todo-mvp-dagger 项目中TaskDetailActivity的精简版:

在示例代码中,Fragment 作为视图实例传递给 TaskDetailPresenterModule。使用 Mosby 是否可行,如果可以,这是一种好的做法吗?我们可以把我们的presenter放在Activity里面,用Fragment代替Activity作为MvpView吗?

我问这个是因为我也想知道 Mosby 如何处理内部有多个 Fragment 的 Activity。

谢谢你的帮助。

0 投票
1 回答
312 浏览

android - Android mosby 访问演示者查看

我想访问查看小部件,例如演示者TextViewEditText来自演示者,我该怎么做,

在我的活动主要中,我想更改scheduleDateTimeNotify演示者的文本

主持人:

ActivityChannelContentPresenterImpl:

ActivityChannelContentViewModel:

ActivityChannelContentView 接口:

0 投票
1 回答
111 浏览

java - 如何将基类添加到 mosby MVPActivity?

我正在寻找一种将基类添加到mosby MVPActivity 的方法。让我解释一下我需要什么。

通常在使用 mosby 时,我们会像这样声明一个活动:

但我想添加一个基类,这样我就可以像这样进行调用:

然后 BaseActivity 会是这样的:

但这不起作用,因为 IDE 在编译时有一个错误说“扩展 MvpView”有意外的界限。那么如何将基类添加到 mosby MVPActivity ?

0 投票
1 回答
114 浏览

java - 结合之前的 observable

我正在尝试使用 RxJava、RxAndroid 和 Mosby3 将两种表单插入组合在一起,但我找不到让它工作的方法。

我的结构:

我在哪里触发我的意图(MVI 模式):

并将它们绑定在一起:

我的问题是,我的 uploadImage 返回一个以字符串结尾的内部结构,但是,如何获取返回的字符串,将其添加到我的command对象(在此对象中设置返回的 URL)并继续流程(将我的命令发送到云端) ?

谢谢!

0 投票
1 回答
34 浏览

android - Intent 有时不会被解雇

我有以下代码:

继承自:

但问题是,有时会触发 fetchLocalCheckin,有时不会。我在这里做错了什么?我错过了什么 ?

0 投票
1 回答
185 浏览

android - 在仅发送屏幕上使用 MVI

我正在尝试创建一个具有 SignaturePad 的仅发送视图,一旦用户单击保存按钮,就会触发保存意图并进行一些后台处理。

我有以下内容:

主持人:

签名片段:

...

最后是我的看法:

问题是,一旦我的片段被创建, .startWith 就会被触发,而无需用户单击按钮。之后,如果用户点击按钮,加载状态永远不会被调用(.startwith again),而只会调用成功(或错误)。我在这里想念什么?

再次感谢 !

编辑:

另一个进程正在获取透明位图,但在添加 startWith 之后,我的可调用对象永远不会被调用。如果我把它拿出来,它就像一个魅力。

0 投票
1 回答
177 浏览

android - Mosby MVI - 如何重用 Presenter

我的演示者如下所示:

我的片段loadArticleIntent如下所示:

结果

如果片段是第一次创建,我会得到以下 3 项:

  1. 最初的事件
  2. 加载文章事件
  3. 加载的文章或错误事件

如果再次创建片段,它将从地图中检索已经存在的演示者,并重用其中的最后一个已知状态。然后我得到以下信息:

  1. 最后加载的事件
  2. 最初的事件
  3. 加载文章事件
  4. 加载的文章或错误事件

这并不完美,我需要将逻辑更改为仅发出最后一个已知状态(与屏幕旋转后发生的行为相同)。

我该怎么解决这个问题?

0 投票
1 回答
80 浏览

mosby - 方向改变后的莫斯比和恢复状态

在我们的应用程序(使用 Mosby)中,我们有一个 SearchActivity,它使用 Retrofit 来获取结果。目前的基本流程是 SearchActivity 有一个List<Results>(它有一个@State注释),我添加了检索到的结果。从 SearchActivity 我调用到presenter.doSearch(searchquery) 在我们的 RetrofitonSuccess回调中,然后调用getView().populateResults(results). 然后,这会将检索到的结果添加到活动中的列表中,并添加到回收器视图中。

这不是正确的方法,因为我们现在得到了 TransactionTooLargeExcpetion's。

那么,使用 Mosby 保存这些获取的结果并在方向更改时恢复它们的正确方法是什么。

0 投票
1 回答
373 浏览

android - 在 onDettachView 中处理 Observables

我在我的应用程序中遇到了著名的 IllegalStateException 问题。问题源于网络请求(使用改造)完成后,返回给我一个 Observable。我正在使用优秀的 Mosby 框架来处理 MVP 的东西,这是我的代码:

我从 Crashlytics 得到的例外是:

我的问题:在 detachView 方法中处理 Observables 是否正确?据我了解,在 onStop(Android 检查状态)之后调用 frag(我将其与 frags 一起使用)onDestroyView 时调用 detachView。如果没有,我应该在我的演示者中创建一个 dispose 方法并从我的 frag onStop 调用它吗?

谢谢 !

0 投票
2 回答
6427 浏览

android - OnErrorNotImplementedException 使用 RxJava2 和 Retrofit2 Mosby MVI

尽管处理了下游错误(?),但我收到了 OnErrorNotImplementedException 并且应用程序崩溃了。

例外

改造存储库:

Interactor 观察到此结果:

onErrorReturn { MapViewState.Error(it) }发射正确(就在应用程序崩溃之前,我可以看到屏幕上呈现的正确内容)。如何在保持 MVI 架构的同时避免此异常?

编辑

dimsuz 提供的答案是正确的解决方案,尽管要实现合并并返回一个包含所有项目的 Observable,必须将其修改为: