在活动中持续使用匕首的主持人

时间:2017-03-08 18:16:49

标签: java android

当您将演示者注入旋转活动范围时,如何使演示者保持活动状态?

我的理解是演示者和活动被销毁,每次都会创建一个新的演示者和活动。有没有办法在重新创建活动时保持演示者活着?

1 个答案:

答案 0 :(得分:0)

是的,只要我们谈论配置更改(例如轮换)。

您可以覆盖FragmentActivity的方法

fun onRetainCustomNonConfigurationInstance():Any   - 保存演示者的旋转。

在onCreate()期间恢复相同的实例 只是打电话 getLastCustomNonConfigurationInstance():Any

Here是在BaseActivity中保存Dagger 2子组件的示例。当您使用方法来保存dagger的组件而不仅仅是演示者时,演示者的创建变得非常容易:

  • 使用@Inject
  • 标记prestenter构造函数
  • 使用@Inject
  • 标记目标活动中的演示者字段
  • 从BaseActivity获取注入器(如在链接类中)并在onCreate期间在目标活动中注入它。