RecyclerView在android片段中的textview存储/恢复状态不起作用

时间:2016-06-24 00:20:20

标签: android android-fragments android-recyclerview

我正在开发一个Android应用程序,我的问题结构是这样的。

一个活动包含一个片段,此片段包含一个RecyclerView。 RecyclerView项目包含两个文本视图,显示如下所示的简单文本:

 TextTitle TextValue --> item1
 TextTitle TextValue --> item2
 TextTitle TextValue --> item3

如果用户点击文本值,则其值会更改(值为二进制,因此它只有两个)。如果用户通过点击更改前两个项的值,我想在恢复/保存状态的帮助下返回此片段时恢复这两个值。

我关注了很多文章并收集了一些信息,如果我必须在项目的视图布局中为两个textview使用正确的唯一ID,那么recyclelerview状态将自动存储,只需要保存整个recyclerview状态。它不适用于我的情况。我究竟做错了什么?我需要再次填充适配器吗?

任何帮助将不胜感激。

  @Override
  public void onSaveInstanceState(@NonNull Bundle outState) {
    super.onSaveInstanceState(outState);

    outState.putParcelable(INSTANCE_STATE_CONTENT_RECYCLER_VIEW,recyclerView.getLayoutManager().onSaveInstanceState());
  }

      // again restore it restore it
      if (recyclerViewState != null) {
        recyclerView.getLayoutManager().onRestoreInstanceState(recyclerViewState);
        recyclerViewState = null;
       }

      @Override
      public void onViewBound(@Nullable Bundle savedInstanceState) {
        //super.onViewBound(savedInstanceState);
        if (savedInstanceState != null) {
          recyclerViewState = savedInstanceState.getParcelable(INSTANCE_STATE_CONTENT_RECYCLER_VIEW);
        }
        // continue with my work.
      }

0 个答案:

没有答案