2013-07-08 87 views
1

Android的发展 - 网格视图滚动位置 嗨,我试图创建一个使用网格视图墙纸应用程序。但有一个问题,当我在网格视图点击它采取不同的活动,当我按后退按钮,我不得不再次滚动网格视图从上到下。我想的是,网​​格视图应保持在相同的位置,它是当我点击网格视图的图像。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); 

     } 
    }); 
} 
+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(); 
} 
-2

在的onResume(),

gridView.setSelection(index, 0); 
中的onPause

,以下行添加到末尾:

index = gridView.getFirstVisiblePosition(); 
+0

它在网格视图中不起作用。请帮助我,我认为你通过这几行帮助了我很多,但它不起作用。 – Maulik

+0

感谢您的帮助。你解决我的问题 – Maulik

+7

GridView控件没有办法setSelectionFromTop –