我正在开发一个新应用程序,需要有一组选项卡。在每个选项卡内,我需要多个屏幕,每个屏幕都有自己的返回栈(客户要求)。以下是我所说的内容的简图:
Tab 1
|
|_Screen1a --> Screen1b --> Screen1c
Tab 2
|
|_Screen2a -->Screen2b
Tab 3
|
|_Screen3a --> Screen3b --> Screen3c --> Screen3d
...etc
现在,我已经使用FragmentActivity作为选项卡主机活动完成了这项工作。每个选项卡都是一个FragmentActivity,包含每个片段。我的意思是:
FragmentActivity
FragmentActivity1
|
|_Fragment1 --> Fragment2 --> Fragment3
FragmentActivity2
|
|_Fragment4 --> Fragment5
FragmentActivity3
|
|_Fragment6 --> Fragment7 --> Fragment8 --> Fragment9
...etc
现在,随着4.2 SDK和新版本的Support Library的发布,出现了嵌套片段。这使您可以将一个片段放置在另一个片段内(我假设您可以继续嵌套,尽管尚未测试)。我考虑切换到使用嵌套片段,因为我目前正在我的Tab主机活动中使用已弃用的方法。基本上,我将整个应用程序的流程实现为片段,并使用单个主机活动。
在性能问题或内存问题等方面,是否存在任何不利因素?还是我应该选择之前的实现并使用已弃用的方法?