Android listview定位到上次显示的位置的实现方法
Androidlistview定位到上次显示的位置的实现方法
整体思路:滑动lictview时,记录listview的位置,定位时定位到该位置。
1、添加全局变量
privateintscrolledX=0; privateintscrolledY=0;
2、Oncreate()添加滚动事件监听
ClassesLV.setOnScrollListener(newOnScrollListener(){
/**
*滚动状态改变时调用
*/
@Override
publicvoidonScroll(AbsListViewview,intfirstVisibleItem,
intvisibleItemCount,inttotalItemCount){
}
@Override
publicvoidonScrollStateChanged(AbsListViewview,intscrollState){
if(scrollState==OnScrollListener.SCROLL_STATE_IDLE){
try{
scrolledX=view.getFirstVisiblePosition();
Log.i("scrollX",String.valueOf(scrolledX));
scrolledY=view.getChildAt(0).getTop();
Log.i("scrollY",String.valueOf(scrolledY));
}catch(Exceptione){
}
}
}
//
});
3、activity 重新启动时,恢复原先的定位。
publicvoidonBack(){
ClassesLV.setSelectionFromTop(scrolledX,scrolledY);
}
protectedvoidonResume(){
//ClassesLV.scrollTo(scrolledX,scrolledY);
onBack();
//initDataFromNet();
isClick=0;
super.onResume();
}
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西