zoukankan      html  css  js  c++  java
  • 转载 收藏 listview判断是否在底部

    ListView已到顶部的判断
     
                public boolean isListViewReachTopEdge(final ListView listView) {
                    boolean result=false;
                    if(listView.getFirstVisiblePosition()==0){
                        final View topChildView = listView.getChildAt(0);
                        result=topChildView.getTop()==0;
                    }
                    return result ;
                }
    注:view的getTop()表示的是该View的顶部到父控件的左上角的垂直距离。
    当ListView的第一个child View的getTop()为零时,就表示ListView已经滚动到顶部了或已经在顶部不能在向上滑动了。
    ListView已到底部的判断
                public boolean isListViewReachBottomEdge(final ListView listView) {
                    boolean result=false;
                    if (listView.getLastVisiblePosition() == (listView.getCount() - 1)) {
                        final View bottomChildView = listView.getChildAt(listView.getLastVisiblePosition() - listView.getFirstVisiblePosition());
                        result= (listView.getHeight()>=bottomChildView.getBottom());
                    };
                    return  result;
                }
    注:view的getBottom()表示的是该View底部到父控件的左上角的垂直距离
    当ListView的最后一个child View的getBottom()小于等于ListView的getHeight()时,就表示ListView滚动到底部或已经在底部了,不能再向下滑动了。
    关于View的getLeft, getRight, getTop, getBottom更多内容请参考《Android View的getLeft, getRight, getTop, getBottom

    结束

  • 相关阅读:
    LINQ -2015-04-27
    wireshark的安装
    c#中的classes和objects一些知识【1】
    初学C#,用vs去开始hello world!
    file_get_contents HTTP request failed! Internal Server Error
    验证码二(验证码使用)
    接口调用 POST
    接口调用 GET方式
    百度地图改标注样式
    Linux-常用命令
  • 原文地址:https://www.cnblogs.com/childyngy/p/5489808.html
Copyright © 2011-2022 走看看