0

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

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

总结一下:

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

希望我能完全说明我的问题。

TIA杰拉德

4

1 回答 1

0

我现在能想到的解决方案有两种:

  1. 在这种情况下忘记 2 个活动,只用 1 个活动来解决这个场景。我有多个项目都具有这些要求。在纵向模式下,我使用 ViewSwitcher 或 ViewFlipper 来全屏显示 Fragment A 或 Fragment B。在风景上,事情和你描述的一样。这样 2 个片段可以相互通信,片段 B 可以更新片段 A 上的选择。

  2. 使用 .startActivityForResult() 启动 Activity B,因此它可以为 Activity A 提供包含当前选择的结果。

于 2012-08-14T16:17:15.747 回答