首页 > 解决方案 > 从另一个片段返回后保留片段内的复选框状态

问题描述

他们在 Fragment (F1) 内使用 RecyclerView(R1.1)。Recyclerview R1.1 显示客户列表,其中包括 recyclerview R1.1 中每个客户的复选框。他们还为另一种类型的客户使用 2 个选项卡。我选择了第二个选项卡并选中了 recyclerview 中的一些复选框。

在 Fragment F1 的 onCreateView() 中,我正在调用 web api 来获取数据以填充 recyclerview R1.1。

然后通过代码为 AdvancedSearch 调用另一个片段(F2)fragmentTransaction.replace(int,fragment2,fragment2.getTag())。然后调用另一个片段(F3)来显示来自 F2 的搜索结果。

然后从 F3 回到 F2 再回到 F1。在这里,我想获得带有选定的第二个选项卡和复选框的片段 F1。

我已经检查了 fragmentTransaction.add(int,fragment,string),但我不知道这是否是一个好习惯。

标签: android

解决方案


最简单的方法就是你说的那个。使用 add 选项,Fragment 保持状态,因为它还活着。如果你不想这样维护片段,你应该通过父 Activity 使用 onSaveInstanceState 和 onRestoreInstanceState。


推荐阅读