android 从源码分析为什么Listview初次显示时没滚动却自动调用onScroll方法的原因
来源:互联网 发布:vs2010 优化选项 编辑:程序博客网 时间:2024/06/05 13:23
我们做Listview的分批加载时,需要为Listview调用setOnScrollListener(具体代码可见我上一篇博客)
可是,我们会发现,当运行程序时,listview明明没有滚动,那为什么系统会调用onScroll方法呢?(补充:此时onScrollStateChanged并不会调用)
我们先看setOnScrollListener源码:
public void setOnScrollListener(OnScrollListener l) { mOnScrollListener = l; invokeOnItemScrollListener(); }setOnScrollListener里面调用了invokeOnItemScrollListener()方法,接着看该方法源码:
void invokeOnItemScrollListener() { if (mFastScroller != null) { mFastScroller.onScroll(mFirstPosition, getChildCount(), mItemCount); } if (mOnScrollListener != null) { mOnScrollListener.onScroll(this, mFirstPosition, getChildCount(), mItemCount);//这里调用onScroll,一切真相大白了。 } onScrollChanged(0, 0, 0, 0); // dummy values, View's implementation does not use these. }
1 0
- android 从源码分析为什么Listview初次显示时没滚动却自动调用onScroll方法的原因
- 【android】从源码上分析ListView/GridView调用setEmptyView不起作用的原因及解决办法
- 【android】从源码上分析ListView/GridView调用setEmptyView不起作用的原因及解决办法
- Android ListView onScroll NullPointerException ListView滚动崩溃
- Android - listview未滚动触发onScroll
- 从源码上分析ListView/GridView调用setEmptyView不起作用的原因及解决办法
- android 当ListView滚动时自动调用 onCheckedChanged 导致CheckBox 状态不停变化 的解决办法
- android ListView/Recyclerview滚动时自动调用onCheckedChanged导致CheckBox状态混乱的解决办法
- android ListView/Recyclerview滚动时自动调用onCheckedChanged导致CheckBox状态混乱的解决办法
- android 当ListView滚动时自动调用 onCheckedChanged 导致CheckBox 状态不停变化 的解决办法
- android ListView 在初始化时多次调用getView()原因分析
- android ListView 在初始化时多次调用getView()原因分析
- ListView的addfooter没显示footer的原因之一
- ListView自动滚动方法
- ListView自动滚动方法
- ListView自动滚动方法
- ListView自动滚动方法
- 【进阶android】ListView源码分析——ListView的滚动机制
- 1Z0-051 QUESTION 25 表名应该注意的地方和CLOB应该注意的地方
- 进制转换、冒泡排序、选择排序
- 图的深度优先遍历--邻接表实现
- C运行时库函数和API函数的区别和联系
- 对jeecg分析--利与弊
- android 从源码分析为什么Listview初次显示时没滚动却自动调用onScroll方法的原因
- 能在搜索引擎上找到CSDN刚发表的新博客吗
- 例子:两个表根据productID合并
- 如果爱,爱并不如烟
- Android中activity背景色的设置
- window.attachEvent和window.addEventListener的区别
- sed问题集锦(更新中)
- linux下使用ftp命令下载压缩文件,解压时出错的问题
- China's WeChat Gaining Global Attention