reference to : http://blog.csdn.net/welovesunflower/article/details/7926512

工作中遇到一个需求,对ListView某一项操作后刷新ListView,但是如果直接刷新,界面上ListView从第一列开始显示,用户体验不好,于是在网上搜了一些恢复LIstView滑动位置的方法。解决办法如下:

1 :

// 设置ListView到记录的位置
mListView.setSelection(mPosition);
mListView.setOnScrollListener(new OnScrollListener() {  // 滚动状态改变时调用
    @Override  public void onScrollStateChanged(AbsListView view, int scrollState) {  // 不滚动时保存当前滚动到的位置  if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {  mPosition = mListView.getFirstVisiblePosition();  }  }  // 滚动时调用
    @Override  public void onScroll(AbsListView view, int firstVisibleItem,  int visibleItemCount, int totalItemCount) {  }
});

2:

//给ListView设置监听器
backgroundList.setOnScrollListener(scrollListener);
private OnScrollListener scrollListener = new OnScrollListener() {@Overridepublic void onScroll(AbsListView arg0, int arg1, int arg2, int arg3) {}@Overridepublic void onScrollStateChanged(AbsListView view, int scrollState) {if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {// scrollPos记录当前可见的List顶端的一行的位置 scrollPos = myList.getFirstVisiblePosition(); }if (arrayList != null) {  View v=myList .getChildAt(0);scrollTop=(v==null)?0:v.getTop();}  }};调用setAdapter之后恢复位置:
myList .setSelectionFromTop(scrollPos, scrollTop);

分类: Android Pro
本文转自demoblog博客园博客,原文链接http://www.cnblogs.com/0616--ataozhijia/p/6110837.html如需转载请自行联系原作者
demoblog

[Android Pro] 精确记录和恢复ListView滑动位置相关推荐

  1. 精确记录和恢复ListView滑动位置

    工作中遇到一个需求,对ListView某一项操作后刷新ListView,但是如果直接刷新,界面上ListView从第一列开始显示,用户体验不好,于是在网上搜了一些恢复LIstView滑动位置的方法.解 ...

  2. Android之 如何解决ScrollView 和ListView滑动冲突的问题如何解决ScrollView can host only one direct child

    android 采用ScrollView布局时出现异常:ScrollView can host only one direct child. 解决办法:主要是ScrollView内部只能有一个子元素, ...

  3. ListView滑动位置精准记忆

    需求场景: 一个ListView页面,滑动阅读到某一位置,然后退出页面,下次再进入页面的时候,想要直接滑动到上次阅读的位置. 方案1: 页面退出的时候,ListView.getFirstVisible ...

  4. [Android Pro] 完美解决隐藏Listview和RecyclerView去掉滚动条和滑动到边界阴影的方案...

    reference to : http://blog.csdn.net/ming2316780/article/details/51578621 一.首先是Listview的属性设置 设置滑动到顶部和 ...

  5. Android学习记录(二十七)--ListView刷新记录滑动位置的实现。

    在listview中实现文件系统时,目录层级跳转,采用activity跳转的话,压栈可能会非常的多,这种实现是不合理的. 如果不压栈的话,如果回退到上一次目录,就需要记录上一次滑动的位置.本文记录一下 ...

  6. Android 使用NineOldAndroids实现绚丽的ListView左右滑动删除Item效果

    转载请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/18311877),请尊重他人的辛勤劳动成果,谢谢! 今天还是 ...

  7. Android 使用Scroller实现绚丽的ListView左右滑动删除Item效果

    本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/17539199) 我在上一篇文章中Android 带你从源码的角度解析 ...

  8. Android在ListView滑动数据混乱

    我相信做过Android应用程序开发或多或少都遇到了这个问题.或者是在ListView数据损坏幻灯片事件.要么GridView数据损坏幻灯片事件. 让我们来看看一个网友写的文章,个人感觉还不错的文章: ...

  9. android listview 滑动条显示_第七十六回:Android中UI控件之RecyclerView基础

    各位看官们,大家好,上一回中咱们说的是Android中UI控件之ListView优化的例子,这一回咱们说的例子是UI控件之RecyclerView.闲话休提,言归正转.让我们一起Talk Androi ...

最新文章

  1. 95后程序员业余帮人鉴定毒蘑菇,竟成百万粉丝的网络大V!
  2. Redis 05_List列表 数组 Hash散列
  3. 服务器运行jar包日志怎么清理,docker 启动jar包,并将日志文件进行挂载
  4. C语言分支结构的作用,C语言丨用switch语句实现多分支选择结构
  5. sqoop导出solr数据_Apache Atlas - 强大的元数据管理工具
  6. 前端学习(2624):state
  7. 第三章 汇编语言和汇编软件
  8. linux启用shell脚本,linux下开机启动shell脚本
  9. 如何获取filecoin_【IPFSFilecoin】Filecoin矿机厂商排名?如何选择?哪家公司靠谱?...
  10. parseInt 的使用方式,基数表达
  11. C# action 返回值_C#知识点讲解之C#delegate、event、Action、EventHandler的使用和区别
  12. 桌面环境选择_如何在 Ubuntu 20.04 LTS 上安装深度(Deepin)桌面环境 | Linux 中国
  13. java调用hownet--jni
  14. 新宝美股三大指数集体高开
  15. 大运期间寄往深圳邮件需出示有效身份证件
  16. 在VS2017中添加WTL窗口
  17. 华为eNSP配置防火墙进入web界面
  18. MySQL基本操作—DQL实训真题
  19. 双网卡电脑的Internet连接共享
  20. Java面向对象高阶

热门文章

  1. python windows错误码
  2. 【转】js之匿名函数
  3. 贝叶斯网络工具Hugin api的使用
  4. 《课程的反思与重建--我们需要什么样的课程观》之心得体会
  5. ffmpeg 解码rtp方法
  6. harmonyos开发者邀请码,HarmonyOS 2.0鸿蒙第二期开发者Beta公测申请指南
  7. java future用法_Java中的多线程知识点
  8. grails springboot_groovy 使用spring boot
  9. centos 找不到php.ini,centos找不到php.ini文件
  10. 怎么把线稿提取出来_抠线稿,三种提取漫画线稿的方式