1

我的应用程序中的片段有问题。我的界面如下所示:

Screen 1
+---------------+
|   Fragment 1  |
+---------------+
|   Fragment 2  |
|               |
|               |
+---------------+

Screen 2
+---------------+
|   Fragment 1  |
+---------------+
|   Fragment 3  |
|               |
|               |
+---------------+

每个屏幕都是一个单独的活动,这些片段在我的布局 .xml 文件中定义(因此动态替换可能不起作用)。

我的问题是:

screen1 和 screen2 都包含一个片段 1,以及随之而来的所有信息。就目前而言,当我启动screen2活动时,我目前正在传递fragment1的所有数据 - 然后我用来自fragment1 screen1的数据填充screen2中的fragment1。如果用户点击后退按钮,我必须用 screen2 中的任何更改填充 fragment1 screen1。这是一个很大的头痛。

有没有更简单的方法来做到这一点?

(我不想使用单活动/多片段方法,因为我已经去过那里并认为多活动/多片段更适合这个应用程序。)

4

1 回答 1

1

有没有更简单的方法来做到这一点?

是的,使用单个Activity,并Fragment 3 replace Fragment 2在需要添加时使用,因此Fragment 1所有数据都将保持不变。

(我不想使用单活动/多片段方法,因为我已经去过那里并认为多活动/多片段更适合这个应用程序。)

我不得不不同意,因为您通过Fragments在 xml 中设置并在Activitys 之间传递它们的数据来选择更难的路线。我几乎可以保证这比FrameLayout在布局中设置容器然后简单地Fragment在其中添加/替换 s 需要更多的工作。

简单示例 - http://developer.android.com/training/basics/fragments/fragment-ui.html

于 2013-03-23T00:27:48.620 回答