您的位置:首页 > 移动开发 > Android开发

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

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

1.记录位置代码

//声明记录停止滚动时候,可见的位置
private int stop_position;
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
// TODO Auto-generated method stub
// 判断是否是最后一行,并且停止滚动
if (isLastRow && scrollState == OnScrollListener.SCROLL_STATE_IDLE) {
//获取可见位置
stop_position = lv_categories.getFirstVisiblePosition();
// 判断是否是最后一页
if (pageInfo.getNowPage() != pageInfo.getCountPage()) {
// 查询下一页数据
categoryManager.queryObjects(pageInfo.getNowPage() + 1);
}
// 记得把标识改为false
isLastRow = false;
}

}

@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {

if ((firstVisibleItem + visibleItemCount) >= totalItemCount) {
isLastRow = true;
}

}


2.重新开始位置

// 设置listView控件的适配器
lv_categories.setAdapter(adapter);
//设置listView开始的可见位置
lv_categories.setSelection(stop_position);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: