zoukankan      html  css  js  c++  java
  • [Android算法] 精确记录和恢复ListView滑动位置

    代码片段,双击复制
    backgroundList.setOnScrollListener(scrollListener);



    代码片段,双击复制
    private OnScrollListener scrollListener = new OnScrollListener() {
     
                    @Override
                    public void onScroll(AbsListView arg0, int arg1, int arg2, int arg3) {
                    }
     
                    @Override
                    public void onScrollStateChanged(AbsListView view, int scrollState) {
                            if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {
                                    // ListPos记录当前可见的List顶端的一行的位置
                                   scrollPos = myList.getFirstVisiblePosition();
                            }
                            if (arrayList != null) {  
                  View v=myList .getChildAt(0);
                  scrollTop=(v==null)?0:v.getTop();
                }  
             }
            };


    调用setAdapter之后恢复位置:

    代码片段,双击复制
    myList .setSelectionFromTop(scrollPos, scrollTop);



    参考:http://stackoverflow.com/questions/3014089/scroll-to-a-position-in-a-listview 

    路漫漫其修远兮 吾将上下而求索
  • 相关阅读:
    RestTemplate proxy 设置方式
    一道关于主键,闭包的软考题------关系代数复习-码,范式,闭包求解
    MyBatis的XML中使用内部类的方式
    MyBatis SpringBoot 杂记
    服务器安装笔记
    UML符号
    npm 设置代理
    国外一家代码网站
    设计模式复习
    docker 列出每个容器的IP
  • 原文地址:https://www.cnblogs.com/hudabing/p/3126988.html
Copyright © 2011-2022 走看看