3

我正在使用 a在单个活动应用程序中FragmentActivity显示堆栈。Fragments这工作正常,我可以通过片段移动并回击以返回堆栈,直到我旋转设备,当我最终Fragment旋转堆栈顶部时,但点击后退按钮将我带回根Fragment目录之间的所有其他Fragments 都消失了。

我正在使用以下代码将 a 添加Fragment到堆栈中:

FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.mainContentViewContainer, newFragment, "DetailFragment");
transaction.addToBackStack(null);
transaction.commit();

什么可能导致旋转后堆栈为空?

4

1 回答 1

1

强制 android 不重新启动 Activity,添加android:configChangesAndroidManifest.xml,是错误的。

牢记这一点:

什么可能导致旋转后堆栈为空?

由于 Android 的行为,当您旋转屏幕时 MainActivity 将重新启动。android:configChanges您可以使用AndroidManifest 文件的选项覆盖此行为。

android:configChanges="orientation|screenSize"
于 2012-07-05T10:45:06.543 回答