Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/203.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 带改装的StaggedGridLayoutManager_Android_Android Recyclerview - Fatal编程技术网

Android 带改装的StaggedGridLayoutManager

Android 带改装的StaggedGridLayoutManager,android,android-recyclerview,Android,Android Recyclerview,我试图在片段中使用StaggedGridLayoutManager(片段是ViewPager的一部分),我的数组列表由json填充,使用的是改型。在我第一次打开片段时,每个想法都是可以的,但是当我转到另一个活动并按下后退按钮时,我的片段不再显示元素,它是空的。 我调试并解析了json,适配器没有调试,但片段是空的。如果我关闭应用程序并再次打开它,一切都会在一开始工作 代码是: recyclerView = (RecyclerView) v.findViewById(R.id.recycler

我试图在片段中使用StaggedGridLayoutManager(片段是ViewPager的一部分),我的数组列表由json填充,使用的是改型。在我第一次打开片段时,每个想法都是可以的,但是当我转到另一个活动并按下后退按钮时,我的片段不再显示元素,它是空的。 我调试并解析了json,适配器没有调试,但片段是空的。如果我关闭应用程序并再次打开它,一切都会在一开始工作

代码是:

  recyclerView = (RecyclerView) v.findViewById(R.id.recycler_view);
  recyclerView.setLayoutManager(new StaggeredGridLayoutManager(2,StaggeredGridLayoutManager.VERTICAL));

    RecyclerView.ItemAnimator itemAnimator = new DefaultItemAnimator();
    itemAnimator.setAddDuration(1000);
    itemAnimator.setRemoveDuration(1000);
    recyclerView.setItemAnimator(itemAnimator);

    adapter = new OffersAdapter(getActivity(), offers);
    recyclerView.setAdapter(adapter);
改装onResponse
adapter.notifyDataSetChanged()


我的活动就像这张照片,当我点击第三个片段“Oferta”时,一切都很好,如果我点击第一个片段“Certna”,然后再点击第三个片段,它又是空的,如果你能帮忙的话

您可以在
Fragment
内部
onCreate()
方法中使用
setRetainInstance()
,如下所示:

@Override
        public void onCreate(Bundle savedInstanceState {
            super.onCreate(savedInstanceState);
            setRetainInstance(true);
        }