java - 重新创建 Activity 后恢复 fragment

标签 java android android-fragments android-activity

在我的应用程序中,我有一个具有 fragment 容器的 Activity ,当用户进入该 Activity 时,我将一个 fragment (FragmentOne)添加到容器中。一旦他们在 FragmentOne 中输入一些数据,我就会用 FragmentTwo 替换该 fragment 。

当我在 FragmentTwo 上时,如果我将应用程序带到后台并返回,它会转到 FragmentOne。我希望它回到 FragmentTwo。我尝试保存当前 fragment 的实例并恢复它。但是,backStackEntryCount 增加,当我按下后退按钮时,它会导致问题。

实现这一目标的最佳方法是什么?

activity.xml

<?xml version="1.0" encoding="utf-8"?>

<include
    android:id="@+id/toolbar"
    layout="@layout/include_toolbar" />

<RelativeLayout
    android:id="@+id/fragmentContainer"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/toolbar">

</RelativeLayout>

最佳答案

如果您在 Activity 中设置一个标志来指示第一个 fragment 是否已完成,您可以检查此标志以查看要加载哪个 fragment ,以便在您返回应用程序时加载正确的 fragment 。检查加载第一个 fragment 的位置的此标志,如果该标志已升起,则加载第二个 fragment 。

关于java - 重新创建 Activity 后恢复 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33835649/

相关文章:

java - 使用 String.replaceFirst(regexp, "$1") 获取匹配的子字符串时得到空字符串,正则表达式有什么问题?

android - 当互联网连接从关闭切换到打开时,Firebase 推送通知不起作用

android - 将 ArrayList<HashMap<String, String>> 传递给 fragment

java - 如何在andengine中为移动 Sprite 添加轨迹路径

java - 无法连接到 Jetty 上运行的安全 Websocket

android - 如何在小部件上显示其他应用程序图标?

java - 在 openGL ES 2.0 中高效绘制图元

android - 如何在 viewpager 中重新创建 fragment

android - 从 BroadcastReceiver 更新 fragment 的 TextView

java - freemarker 中的子字符串不起作用