zoukankan      html  css  js  c++  java
  • Android中ListView.getCount()与ListView.getChildCount()区别和OnScrollListener()各个参数的区别

    istView.getCount()(实际上是 AdapterView.getCount()) 返回的是其 Adapter.getCount() 返回的值。也就是“所包含的 Item 总个数”。

      ListView.getChildCount()(ViewGroup.getChildCount) 返回的是显示层面上的“所包含的子 View 个数”。

      二者有什么不同?当 ListView 中的 Item 比较少无需滚动即可全部显示时,二者是等价的;当 Item 个数较多需要滚动才能浏览全部的话, getChildCount() < getCount() 其中 getChildCount() 返回的是当前可见的 Item 个数。

      Java代码

      listView.setOnScrollListener(new OnScrollListener() {

      @Override

      public void onScrollStateChanged(AbsListView view, int scrollState) {

      // TODO Auto-generated method stub

      }

      @Override

      public void onScroll(AbsListView view, int firstVisibleItem,

      int visibleItemCount, int totalItemCount) {

      // TODO Auto-generated method stub

      /**firstVisibleItem表示在现时屏幕第一个ListItem(部分显示的ListItem也算)

      在整个ListView的位置(下标从0开始)**/

      Log.i("firstVisibleItem", String.valueOf(firstVisibleItem));

      /**visibleItemCount表示在现时屏幕可以见到的ListItem(部分显示的ListItem也算)总数**/

      Log.i("visibleItemCount", String.valueOf(visibleItemCount));

      /**totalItemCount表示ListView的ListItem总数**/

      Log.i("totalItemCount", String.valueOf(totalItemCount));

      /**listView.getFirstVisiblePosition()表示在现时屏幕第一个ListItem(第一个ListItem部分显示也算)

      * 在整个ListView的位置(下标从0开始)**/

      Log.i("firstPosition", String.valueOf(listView.getFirstVisiblePosition()));

      /**listView.getLastVisiblePosition()表示在现时屏幕最后一个ListItem(最后ListItem要完全显示出来才算)

      * 在整个ListView的位置(下标从0开始)**/

      Log.i("lasPosition", String.valueOf(listView.getLastVisiblePosition()));

      }

      });

  • 相关阅读:
    组织过程资产
    事业环境因素
    一起来学习Android自定义控件2-简单的写字板控件
    Android自定义控件1
    一起来学习Android自定义控件1
    Java你可能不知道的事(3)HashMap
    Java你可能不知道的事(3)HashMap
    Java你可能不知道的事(3)HashMap
    java你可能不知道的事(2)--堆和栈
    java你可能不知道的事(2)--堆和栈
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/4778183.html
Copyright © 2011-2022 走看看