2013-07-05 104 views
0

在活动A我有一个肖像布局和一个风景布局。如果在纵向拍摄列表项目时,将启动新的FragmentActivity(活动B)以显示适当的内容。如果在横向上,活动A中的屏幕右侧显示片段以显示内容。通过片段+其状态返回上一个活动

我的问题是:

如果用户开始通过保持装置在纵向和点击列表项来打开活动B - ,然后打开该设备的横向,活动B应当关闭,在活动A屏幕右侧显示的片段。

我不知道如何(或者是否有可能)将FragmentActivity B中的片段传递回活动A中的片段。如果我停止FragmentActivity B它内部的片段是否仍然在片段管理器中用于访问活动A?

有没有解决方案,或更好的方式来实现这一目标?

感谢

回答

1

如果我停下FragmentActivity B将其中的片段仍处于碎片经理在活动A访问?

不,因为每项活动都有自己的FragmentManager

更好的实现方法?

摆脱活动B.使用片段交易,并把一切都在活动A.

或者,有活动B检测到它不再需要在onCreate()(配置更改后调用),并把它立即finish()

+0

或者,让Activity B检测到它在onCreate()中不再需要(在配置更改后调用)并立即完成()。 我不知道这将如何帮助我,因为我仍然需要活动B中的片段出现在活动A中。听起来好像我必须在活动A中完成这一切,这真是可惜。 –

+0

@MichaelJ:“我不确定这将如何帮助我,因为我仍然需要活动B中的片段出现在活动A中” - 您将在活动A中重新创建片段。同样,您不能在活动。 – CommonsWare

+0

重新创建片段很好,但状态如列表滚动位置呢? –