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 

    路漫漫其修远兮 吾将上下而求索
  • 相关阅读:
    flask 模板block super()的讲解
    flask-include标签使用标签
    spring boot 使用属性加载顺序
    mongodb中的_id的ObjectId的生成规则
    由整数对(父节点和子节点的关系)组成的二叉树的高度问题
    Akka in action (第一章 介绍Akka)
    数据结构学习(一)数组
    spray-json
    JMS API(二)
    JSM 学习(一)
  • 原文地址:https://www.cnblogs.com/hudabing/p/3126988.html
Copyright © 2011-2022 走看看