如何在片段弹回堆栈后保持网格视图滚动位置?

时间:2016-04-18 04:35:24

标签: android android-fragments

我正在开发一个活动中包含多个片段的android应用程序。我在片段里面使用网格视图。当我更改片段然后将堆栈弹回到旧片段时,网格视图滚动位置被更改为位置零。片段弹回堆栈后如何保持网格视图滚动位置?

1 个答案:

答案 0 :(得分:8)

好吧,这样做

你在onCreateView()方法

GridAdapter yourGridAdapter;

    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    ...

    if(yourGridAdapter ==null){
     yourGridAdapter = new GridAdapter();
    }

    GridView gridView = (GridView) convertView.findViewById(R.id.your_grid_view);
    gridView.setAdapter(yourGridAdapter);

    ...
    }

说明:

当片段从片段生命周期中的onCreateView()和方法重新加载片段之后直到onResume()被调用,如果在onCreateView()方法中重新实例化适配器,则会再次创建gridView项目但如果您不实例化,则相同的适配器将附加到gridView。