替换SingleTask活动中的片段

问题描述 投票:0回答:1

活动A是SingleTask活动。在其OnCreate回调中,我创建一个片段并将其附加到布局。

活动B现在启动,A暂停并且其OnSaveInstanceState被调用。

活动A现在以新的意图被重新调用(由于B中的交互)。在OnNewIntent()中,我基于新的意图创建一个新的片段,并替换先前的片段。

这将导致IllegalStateException:在onSaveInstanceState之后无法执行此操作。

执行此操作的正确方法是什么?看起来,即使已调用OnNewIntent(),框架仍认为A已暂停。

android android-fragments android-lifecycle
1个回答
0
投票

您需要调用super.onNewIntent(intent)来更新FragmentManager的状态,以便您可以执行FragmentTransactions。

© www.soinside.com 2019 - 2024. All rights reserved.