zoukankan      html  css  js  c++  java
  • Android listView scroll 恢复滚动位置

    相信大家尝试过许多方法恢复滚动位置,本人也找了许多方法,唯有这个方法好用,下面把代码贴出来

    声明两个变量

    private int mPosition;
    private int lvChildTop;

    pause , resume方法

            @Override
    	public void onPause() {
    		// TODO Auto-generated method stub
    		super.onPause();
    
    		SharedPreferences mySharedPreferences = activity.getSharedPreferences(MY_PREFS, Activity.MODE_PRIVATE);
    		SharedPreferences.Editor edit = mySharedPreferences.edit();
    		edit.putInt("mPositionChildTop", lvChildTop);
    		edit.putInt("mPosition", mPosition);
    
    		edit.commit();
    	}
    
    	@Override
    	public void onResume() {
    		// TODO Auto-generated method stub
    		super.onResume();
    
    		SharedPreferences mySharedPreferences = activity.getSharedPreferences(MY_PREFS, Activity.MODE_PRIVATE); // MY_PREFES 是声明的字符串
    		lvChildTop = mySharedPreferences.getInt("mPositionChildTop", 0);
    		mPosition = mySharedPreferences.getInt("mPosition", 0);
    		listMessage.setSelectionFromTop(mPosition, lvChildTop); // listMessage 是listview ,
    	}


    listview 的监听事件

    private OnScrollListener lvScrollListener = new OnScrollListener() {
    
    		@Override
    		public void onScrollStateChanged(AbsListView view, int scrollState) {
    			// TODO Auto-generated method stub
    			// 不滚动时保存当前滚动到的位置
    			if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {
    				mPosition = listMessage.getFirstVisiblePosition();
    				View v = listMessage.getChildAt(0);
    				lvChildTop = (v == null) ? 0 : v.getTop();
    			}
    		}
    
    		@Override
    		public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
    			// TODO Auto-generated method stub
    
    		}
    	};





  • 相关阅读:
    高精度计算模板
    P1108 低价购买 [DP][统计方案]
    POJ3349 Snowflake Snow Snowflakes [哈希]
    P1312 Mayan游戏 [深搜][模拟]
    P1378 油滴扩展[深搜]
    P1514 引水入城[搜索,线段覆盖]
    TYVJ1391 走廊泼水节
    【BZOJ1196】公路修建问题
    【BZOJ3624】免费道路
    【BZOJ2429】聪明的猴子
  • 原文地址:https://www.cnblogs.com/james1207/p/3343414.html
Copyright © 2011-2022 走看看