Android SDK片段--在多个活动上保留状态

Android SDK片段--在多个活动上保留状态,android,android-layout,android-fragments,Android,Android Layout,Android Fragments,我正在开发一个应用程序,在这个应用程序中,我有一个主要活动,它位于显示产品的片段左侧。根据选择,横向视图的右侧部分显示详细信息,其中可以详细指定产品的属性。如果应用程序以横向模式运行,则会出现这种情况。如果方向更改为纵向模式,则用户首先选择产品,然后通过单独的专用活动指定产品的属性,其中每个活动仅包含前面提到的横向视图的一个片段 现在,当我在运行时旋转屏幕时,问题就出现了。假设我以纵向模式启动应用程序,并选择第一个产品(活动A,片段A)。下一个屏幕(单独的活动,称为活动B)将包含一个片段B,我可

我正在开发一个应用程序,在这个应用程序中,我有一个主要活动,它位于显示产品的片段左侧。根据选择,横向视图的右侧部分显示详细信息,其中可以详细指定产品的属性。如果应用程序以横向模式运行,则会出现这种情况。如果方向更改为纵向模式,则用户首先选择产品,然后通过单独的专用活动指定产品的属性,其中每个活动仅包含前面提到的横向视图的一个片段

现在,当我在运行时旋转屏幕时,问题就出现了。假设我以纵向模式启动应用程序,并选择第一个产品(活动A,片段A)。下一个屏幕(单独的活动,称为活动B)将包含一个片段B,我可以在其中指定产品的属性1。现在我旋转屏幕。然后,应用程序将显示选择第一个产品的横向视图,并且在右侧显示专用于产品配置的所有片段。是否有一种解决方案可以保留用户在单独活动(即片段B、活动B)中完成的配置,以使景观视图接收状态,从而细节视图可以正确显示迄今为止完成的配置

总结如下:

我在活动A中,只包含一个产品列表(片段A) 我选择第一个 然后我进入一个新的活动B,其中显示了片段B 然后我旋转屏幕 然后我回到活动A,现在左侧包含片段A(列表),右侧包含片段B(除其他外)。 我希望活动B中片段B的状态在活动A中可用,片段B

希望我能详细说明我的问题

短暂性脑缺血发作
杰拉尔德

我现在可以想到两种解决方案:

  • 在这种情况下,忘记2个活动,只需1个就可以解决此场景。我有多个项目正好符合这些要求。在纵向模式下,我使用ViewSwitcher或ViewFlipper全屏显示片段a或片段B。在风景方面,事情和你描述的一样。通过这种方式,两个片段可以相互通信,片段B可以更新片段A上的选择

  • 使用.startActivityForResult()启动活动B,以便为活动a提供包含当前选择的结果