标签:
1、记录listView滚动到的位置的坐标,然后利用listView.scrollTo精确的进行恢复
在恢复位置时调用
2、记录listView显示在屏幕上的第一个item的位置,然后利用listView.setSelection恢复
这是网上能找到的最普遍的一种方式,但是却无法准确恢复到原位置,只能定位到每个item的位置,推荐使用第1种
在恢复位置时调用
由于此方式的缺陷加上可以使用listView.scrollTo(x, y)滚动到某个位置,如scrollView.scrollTo(0, 0)表示滚动到顶部这点想到第一种方式,从而实现精确无误的滚动位置恢复
3、通知listView的适配器数据变更
这种适用于listView追加数据的情况,严格说不是恢复listView滚动的位置,只是保持滚动位置不错
Listview加载更多是,恢复到原来的位置,如果不加特殊处理,总是跳转第一条
标签:
原文地址:http://www.cnblogs.com/tianshidechibang234/p/4898466.html