2

可能答案是“你不能”,因为在 Mosby 2.0 中你需要使用 fragment 并将其设置为 setRetainInstance(true) 以保留 Presenter。Conductor 的目的是消除使用 Fragments 的需要,因此无法在应用程序的任何地方使用 setRetainInstance(true)。

但也许还有另一种方式..

4

2 回答 2

5

这是 Conductor 的官方 Mosby 插件:

https://github.com/sockeqwe/mosby-conductor

于 2016-04-27T11:49:16.033 回答
2

抱歉,我无法发表评论,因为我没有足够的声誉,但 Conductor 正在使用 Conductor.attachRouter 以便在活动中获取实例,而 attachRouter 正在使用 LifecycleHandler 来获取“已保存”(也称为保留实例),因为 LifecycleHandler 是无头片段。因此,为了让您拥有一个不会在配置更改时被破坏的演示者,您必须在控制器的构造函数中创建您的演示者。如果我理解正确,控制器的构造函数具有无头片段的生命周期。所以问题解决了,或者我可能在某个地方犯了错误......

于 2016-04-14T16:41:08.753 回答