问题标签 [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 投票
1 回答
178 浏览

android - Mosby MVI - 演示者之间的依赖关系

我认为“问题”对 MVP 也是有效的,但就我而言,我尝试为 MVI 解决它。

用例

我有一个显示数据列表的主视图(每个数据本身就是一个列表)和一个在视图寻呼机中显示单个项目数据列表的详细视图。

我允许删除详细视图中的项目,这意味着我必须更新详细视图和主视图(例如,主视图可能会显示每个项目的子项目数,因此必须更新此数字)

问题

如何解决?

主意

每个级别演示者订阅一个全局主题,删除作业将 aMainPartialState和 a发送DetailPartialState到该全局主题,以便每个视图都可以ViewState正确更新它。

是否有更好的方法来处理外部级别的应用程序逻辑中的内部级别的部分状态?

0 投票
1 回答
163 浏览

android - 使用 RxJava2 和 Mosby 避免 NPE

我已经使用 RxJava 以及 Retrofit 和 Mosby/Conductor 创建了一个应用程序。现在我有这个关于视图处理及其相关内容的问题。

考虑以下代码。

我想知道的是,我每次访问时是否仍然需要执行无效检查getView()?在拆卸之前处理掉所有一次性用品不就可以解决这个问题吗?

0 投票
1 回答
651 浏览

android - Android Mosby MVI 绑定到演示者中的服务

我正在使用 Mosby 创建一个小应用程序。

该应用程序具有我要绑定的服务。我想这样做的正确位置是在演示者中。但我真的不知道该怎么做。

我要存档的是当服务绑定时我想在其上调用一个方法并将该值推送到视图,以便现在的状态是正确的。

当服务在事件总线上发送更新时,我也想将其推送到视图。

我在后面的部分找到了一些示例,但没有关于如何在演示者中绑定/取消绑定服务。

我对它的尝试是在活动中创建这样的东西:

然后在演示者中执行以下操作:

我在正确的道路上吗?这样做的正确方法是什么?我如何将服务中的值发送到 onServiceConnected 中的视图以及当我在 onEventInitialized 中的事件总线上获取事件时?

0 投票
1 回答
140 浏览

mosby - 支持 MvpConstraintLayout

我尝试自己支持 MvpConstraintLayout,只需从 MvpLinearLayout 复制代码

然后,在代码中使用它

在预览中,IDE 说

我已经阅读了 mosby PresenterManager,但仍然不知道为什么。另外,安装到手机上,布局显示就好了。

0 投票
2 回答
126 浏览

unit-testing - 用 Mockito 测试 Mosby

我正在使用 Mosby,我想测试我的简单演示者。

}

我试图通过模拟 Presenter 来解决它:

}

但我有错误

我也尝试过使用真正的演示者,但没有成功。

0 投票
1 回答
637 浏览

unit-testing - RxJava 和使用 mockito 进行单元测试

我想测试我的 Presenter

但是,我有很多疑问,最好的测试方法是什么

1)我写这4个测试场景可以吗

2) 我是否应该为 detachView(boolean retainInstance) 编写测试并清除一次性用品

3) 在我的情况下,哪种机制最适合测试 RxJava?

0 投票
3 回答
417 浏览

android - 在 RxJava subscribeOn() 期间丢失事件

我使用 Mosby 得到了以下代码。

分段:

主持人:

分段:

交互者:

没有 - 方法的延迟不会loadCardIntent()render()CardBackState 触发。但我不想使用任意延迟来确保触发正确的方法。有没有其他方法可以确保所有事件都被发出?

谢谢您的帮助。

0 投票
1 回答
33 浏览

android - 在创建演示者之前不应该恢复视图状态吗?

最近我发现 Mosby3 发布了,我很高兴它对视图状态和所有爵士乐有更好的控制,但我注意到演示者是在视图状态恢复之前创建的。这是故意的还是我的误解?我假设您想在重新加载数据之前恢复视图状态。

0 投票
1 回答
56 浏览

android - 制定需要多个参数的意图?

在 mosby 和示例中,视图中的意图方法最多接受一个参数。如何通过演示者将多个参数传递给交互者?

0 投票
1 回答
526 浏览

android - Mosby 3 中演示者的生命周期 - MVP

我已经迁移到 Mosby 3.0.3,现在正在研究PresenterManager. 对我来说,关于 Activity、Fragment 和 ViewGroup 的演示者的生命周期并不完全清楚。我已经查看了ViewGroupMvpDelegateImplFragmentMvpDelegateImpl并且ActivityMvpDelegateImpl无法 100% 确定演示者何时被终止。

据我了解,默认情况下keepPresenterInstance总是keepPresenterOnBackstack如此,我们有这样的情况:

  1. Fragment 的 Presenter 一直存在,直到它的 Fragment 从 backstack 中移除或整个进程终止。在这种情况下,我依赖以下方法FragmentMvpDelegateImpl

    /li>

但是 childFragmentManagers 中的 Fragments 或 FragmentPagerAdapter 中的 Fragments (也在另一个 Fragment 中)呢?

  1. Activity 和 ViewGroup 的 Presenter 一直存在,直到他们的 Activity 未完成或整个过程终止。在这种情况下,我依赖以下方法ActivityMvpDelegateImpl

    /li>

对于所有 ViewGroup,无论它们位于何处,都是如此吗?

问这个问题的原因是,在我们的应用程序中,我们有活动、片段、片段内的片段、自定义视图组,它们都有演示者。这个想法是在presenter中释放大量资源,detachView(final boolean retainInstance)但在内存中保留一些轻量级的东西——比如inMemory缓存,以便在视图从后台恢复时重用它。

同样,我们使用 Dagger2,了解何时发布适当的子组件很重要。