如何恢复recyclerView已选择项目的android片段的状态
我已经创建了一个片段,在其中我使用了recyclerview和recyler项,可以选择/取消选择。但问题是,当我移动到另一个片段并返回到同一个片段时,所选数据就会丢失如何恢复recyclerView已选择项目的android片段的状态,android,android-fragments,Android,Android Fragments,我已经创建了一个片段,在其中我使用了recyclerview和recyler项,可以选择/取消选择。但问题是,当我移动到另一个片段并返回到同一个片段时,所选数据就会丢失 如何像前面的条件一样获取片段,其中选定的项目将处于选定的条件。尝试使用SaveInstanceState让我们检查下面的一个示例 public class MainFragment extends Fragment { // These variable are destroyed along with Activit
如何像前面的条件一样获取片段,其中选定的项目将处于选定的条件。尝试使用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
并将相关数据保存在那里。我想这是因为您没有保存所选项目的数据。当您切换回时,将再次创建您的片段。现在,如果您尚未存储所选项目。它将显示默认值或过去的数据。