【发布时间】:2014-12-12 19:07:51
【问题描述】:
我有两个活动 A 和 B。
我在活动 A 的片段内有一个地图视图,单击按钮时,活动 B 启动。生命周期是这样的:
onPause() in fragment inside A
onPause() in activity A
onStop() in fragment inside A
onStop() in activity A
当我从活动 B 按下设备上的物理后退按钮时,它会返回到活动 A,流程是这样的。
onStart() in activity A
onStart() in fragment inside A
onResume() in activity A
onResume() in fragment inside A
现在我在 ActivityB 中使用setSupportActionBar(mToolbar) 将自定义工具栏设置为操作栏。我还为返回导航设置了getSupportActionBar().setDisplayHomeAsUpEnabled(true);,它显示了一个左箭头。
问题是单击左箭头时,活动 A 将再次重新创建。
生命周期是这样的:
onDestory() in fragment(in Activity A)
onCreate() in activity A
onCreate() in fragment
onCreateView() in fragment
onStart() in activity A
onStart() in fragment
onResume() in activity A
onResume() in fragment
因此,活动 A 片段中的地图将再次重新加载。
我们可以防止片段在返回导航时被破坏吗?
提前致谢
【问题讨论】:
-
这非常令人困惑...您应该尝试澄清流程
标签: android android-fragments android-navigation android-toolbar