Android 破片和背驮破片

Android 破片和背驮破片,android,android-fragments,Android,Android Fragments,施工 活动A保存片段A,该片段可以在backstack上添加片段B 问题 片段B保存通过API响应生成的视图。 这些视图的状态是我需要能够在旋转后或返回片段A时通过再次使用onBackPressed和午餐片段B重新创建的状态 我已经阅读了很多关于backstack中片段的主题,我知道它们无法保留实例 我应该怎么做才能取得这样的结果 若保存实例,则backbackback上的片段总是可以保留实例。一个活动或一个片段在一个backbackback上处于暂停状态。因此,您希望在该类的onSaveIns

施工

活动A
保存
片段A
,该片段可以在backstack上添加
片段B

问题

片段B
保存通过API响应生成的
视图。
这些
视图的状态
是我需要能够在旋转后或返回
片段A
时通过再次使用
onBackPressed
和午餐
片段B
重新创建的状态

我已经阅读了很多关于backstack中
片段的主题,我知道它们无法保留实例


我应该怎么做才能取得这样的结果

若保存实例,则backbackback上的片段总是可以保留实例。一个
活动
或一个
片段
在一个backbackback上处于暂停状态。因此,您希望在该类的
onSaveInstanceState
方法中保存数据/变量(您将覆盖它)

现在要从已保存状态还原,您可能已经注意到,分别用于Activity、Fragment的
onCreate
onCreateView
有一个
Bundle savedInstanceState
参数正在传入。这是您在上一步中保存状态的地方,因此,您可以添加

如果(savedInstanceState!=null){
//TODO:恢复状态
}


如果您保存实例,则backbackback上的片段始终可以保留实例。一个
活动
或一个
片段
在一个backbackback上处于暂停状态。因此,您希望在该类的
onSaveInstanceState
方法中保存数据/变量(您将覆盖它)

现在要从已保存状态还原,您可能已经注意到,分别用于Activity、Fragment的
onCreate
onCreateView
有一个
Bundle savedInstanceState
参数正在传入。这是您在上一步中保存状态的地方,因此,您可以添加

如果(savedInstanceState!=null){
//TODO:恢复状态
}


如果您保存实例,则backbackback上的片段始终可以保留实例。一个
活动
或一个
片段
在一个backbackback上处于暂停状态。因此,您希望在该类的
onSaveInstanceState
方法中保存数据/变量(您将覆盖它)

现在要从已保存状态还原,您可能已经注意到,分别用于Activity、Fragment的
onCreate
onCreateView
有一个
Bundle savedInstanceState
参数正在传入。这是您在上一步中保存状态的地方,因此,您可以添加

如果(savedInstanceState!=null){
//TODO:恢复状态
}


如果您保存实例,则backbackback上的片段始终可以保留实例。一个
活动
或一个
片段
在一个backbackback上处于暂停状态。因此,您希望在该类的
onSaveInstanceState
方法中保存数据/变量(您将覆盖它)

现在要从已保存状态还原,您可能已经注意到,分别用于Activity、Fragment的
onCreate
onCreateView
有一个
Bundle savedInstanceState
参数正在传入。这是您在上一步中保存状态的地方,因此,您可以添加

如果(savedInstanceState!=null){
//TODO:恢复状态
}


使用
onSaveInstanceState(Bundle outState)
并使用hide+add启动新片段。使用
onSaveInstanceState(Bundle outState)
并使用hide+add启动新片段。使用
onSaveInstanceState(Bundle outState)
并使用hide+add启动新片段。使用
onSaveInstanceState(Bundle outState)
并使用hide+add启动新片段。此链接可能会有所帮助:该链接非常有用,但我仍然不知道如何保留此布局。问题是其中一些是开关、编辑文本和复选框。我应该如何保存这些数据?它们中的大多数甚至在附加容器(LinearLayout)中。这样做的方法是保存它们显示的数据的状态(例如,选择或取消选择开关,LinearLayout/RelativeLayout是否包含子视图,如果它包含子视图,那么是哪一个,如果在您的情况下是一个变量值,当前显示的颜色是什么)。您可以将此数据保存在savedInstanceState中,然后使用该配置重新绘制活动/片段。此链接可能会有所帮助:该链接非常有用,但我仍然不知道如何保留此布局。问题是其中一些是开关、编辑文本和复选框。我应该如何保存这些数据?它们中的大多数甚至在附加容器(LinearLayout)中。这样做的方法是保存它们显示的数据的状态(例如,选择或取消选择开关,LinearLayout/RelativeLayout是否包含子视图,如果它包含子视图,那么是哪一个,如果在您的情况下是一个变量值,当前显示的颜色是什么)。您可以将此数据保存在savedInstanceState中,然后使用该配置重新绘制活动/片段。此链接可能会有所帮助:该链接非常有用,但我仍然不知道如何保留此布局。问题是其中一些是开关、编辑文本和复选框。我应该如何保存这些数据?它们中的大多数甚至在附加容器(LinearLayout)中。这样做的方法是保存它们所显示的数据的状态(例如,开关处于选中或未选中状态,LinearLayout/RelativeLayout是否包含子视图,如果它包含子视图,则显示哪一个,列是什么