我有一个选项卡式应用程序,比如 2 个选项卡。它最初是使用 ActivityGroup 开发的。但是,在意识到 ActivityGroup 不支持多窗格后,我决定使用片段。在解决问题之前,让我简要介绍一下该应用程序。
所以,就像我之前说的,它是一个选项卡式应用程序
TabA---> Activity1---> Activity2---> Activity3
TabB---> Activity4---> Activity5----> Activity6
这是我旧的基于活动组的应用程序的工作模式。
现在有了片段,这将变成如下所示
FragmentActivity---> TabAFragment---> FragmentA1---> FragmentA2
|
---> TabBFragment---> FragmentB1---> FragmentB2
每个片段都连接到服务器以获取初始加载的数据。
并且在事务中,我每次添加时都会替换片段。
FragmentTransaction ft = manager.beginTransaction();
ft.replace(R.id.realtabcontent, fragment);
ft.commit();
观察到什么
对于这两个选项卡片段,我只有一个活动(FragmentActivity-创建选项卡的位置)。我为所有标签共享此活动。例如,我在 tabB 中加载 FragmentB1,使视图膨胀,从服务器获取数据并显示在 ListView 中。然后我切换到其他tabA并加载fragmentA1。到目前为止,一切都很好。现在,如果我回到 tabB,我想查看之前加载的 listView。发生的事情是一切都从第一方开始。
这是我对碎片的第一手经验。我做了一些研究;但是它并没有真正帮助修复我的问题。
如何保留已加载的视图?
有什么想法吗?