Android保存网格视图状态

时间:2013-07-08 18:30:57

标签: android android-gridview

Android开发 - 网格视图滚动位置 嗨,我正在尝试使用网格视图创建一个壁纸应用程序。但是有一个问题,当我点击网格视图时它需要一个不同的活动,当我按下后退按钮时,我必须再次从上到下滚动网格视图。我希望网格视图应该保持在我在网格视图上单击图像时所处的位置。

请帮助。 非常感谢!

gridView = (GridView) findViewById(R.id.grid_view);


    // Instance of ImageAdapter Class       
    gridView.setAdapter(new ImageAdapter(this));


    /**
     * On Click event for Single Gridview Item
     * */
    gridView.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View v,
                int position, long id) {

            // Sending image id to FullScreenActivity

            Intent i = new Intent(getApplicationContext(), FullImageActivity.class);
            // passing array index
            i.putExtra("id", position);
            startActivity(i);

        }
    });
}

2 个答案:

答案 0 :(得分:2)

绝对有效的最终密码!

在顶部。 你需要创建一个静态变量索引。 和gridview为私人。

static int index;
private GridView gridView;

@Override
public void onResume(){

    gridView.setSelection(index);
    super.onResume();
}

@Override
public void onPause(){  
    index = gridView.getFirstVisiblePosition();
    super.onPause();
}

答案 1 :(得分:-2)

在onResume(),

gridView.setSelection(index, 0);

在onPause中,将以下行添加到结尾:

index = gridView.getFirstVisiblePosition();