如何恢复recyclerView已选择项目的android片段的状态

如何恢复recyclerView已选择项目的android片段的状态,android,android-fragments,Android,Android Fragments,我已经创建了一个片段,在其中我使用了recyclerview和recyler项,可以选择/取消选择。但问题是,当我移动到另一个片段并返回到同一个片段时,所选数据就会丢失 如何像前面的条件一样获取片段,其中选定的项目将处于选定的条件。尝试使用SaveInstanceState让我们检查下面的一个示例 public class MainFragment extends Fragment { // These variable are destroyed along with Activit

我已经创建了一个片段,在其中我使用了recyclerview和recyler项,可以选择/取消选择。但问题是,当我移动到另一个片段并返回到同一个片段时,所选数据就会丢失


如何像前面的条件一样获取片段,其中选定的项目将处于选定的条件。

尝试使用SaveInstanceState让我们检查下面的一个示例

public class MainFragment extends Fragment {

    // These variable are destroyed along with Activity
    private int someVarA;
    private String someVarB;

    ...

    @Override
    public void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        outState.putInt("someVarA", someVarA);
        outState.putString("someVarB", someVarB);
    }

    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        someVarA = savedInstanceState.getInt("someVarA");
        someVarB = savedInstanceState.getString("someVarB");
    }

}
片段中没有onRestoreInstanceState方法。
对于片段,有一些特殊情况与活动不同,我认为您需要了解它。一旦片段从backback返回,它的视图将被销毁并重新创建。

覆盖
onSaveInstanceState
和/或
onPause
onResume
并将相关数据保存在那里。我想这是因为您没有保存所选项目的数据。当您切换回时,将再次创建您的片段。现在,如果您尚未存储所选项目。它将显示默认值或过去的数据。