android项目中记录ListView滚动停止位置与设置显示位置

在项目中经常使用到listView控件,当想记录滚动停止时的记录,当点击加载新的数据,从记录的位置开始显示的操作怎么实现尼?分为如下步骤

1.记录位置代码


[java] view plaincopy


  1. //声明记录停止滚动时候,可见的位置  

  2. private int stop_position;  

[java] view plaincopy


  1. @Override  

  2.     public void onScrollStateChanged(AbsListView view, int scrollState) {  

  3.         // TODO Auto-generated method stub  

  4.         // 判断是否是最后一行,并且停止滚动  

  5.         if (isLastRow && scrollState == OnScrollListener.SCROLL_STATE_IDLE) {  

  6.             //获取可见位置  

  7.             stop_position = lv_categories.getFirstVisiblePosition();  

  8.             // 判断是否是最后一页  

  9.             if (pageInfo.getNowPage() != pageInfo.getCountPage()) {  

  10.                 // 查询下一页数据  

  11.                 categoryManager.queryObjects(pageInfo.getNowPage() + 1);  

  12.             }  

  13.             // 记得把标识改为false  

  14.             isLastRow = false;  

  15.         }  

  16.   

  17.     }  

  18.   

  19.     @Override  

  20.     public void onScroll(AbsListView view, int firstVisibleItem,  

  21.             int visibleItemCount, int totalItemCount) {  

  22.   

  23.         if ((firstVisibleItem + visibleItemCount) >= totalItemCount) {  

  24.             isLastRow = true;  

  25.         }  

  26.   

  27.     }  




2.重新开始位置


[java] view plaincopy


  1. // 设置listView控件的适配器  

  2. lv_categories.setAdapter(adapter);  

  3. //设置listView开始的可见位置  

  4. lv_categories.setSelection(stop_position);  



转载于:https://my.oschina.net/u/1244156/blog/397116

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值