【发布时间】:2011-09-15 13:13:11
【问题描述】:
我有一个 ListView 显示一些项目。我想对ListView 的可见部分中当前显示的项目执行一些操作,具体取决于ListView 的滚动方式;因此我想实现ListView 的OnScrollListener。
根据 Android api 参考,onScroll 方法“将在滚动完成后调用”。在我看来,这正是我所需要的,因为一旦滚动完成,我就会在 ListView 上执行我的操作(onScroll 方法返回显示的第一个项目的索引和显示的项目数)。
但是一旦实现,我从LogCat 中看到,onScroll 方法不仅会在滚动完成后触发,而且会针对进入显示视图的每个新项目触发,从滚动的开始到结束.这不是我期望也不是我需要的行为。侦听器的另一个方法 (onScrollStateChanged) 不提供有关当前显示在 ListView 中的项目的信息。
那么,有谁知道如何使用这两种方法来检测滚动的结束并获取有关显示项目的信息? api 参考和方法的实际行为之间的不一致让我有点困惑。 提前致谢。
P.S.:我见过一些类似的话题,但没有什么能帮助我理解整个事情是如何运作的......!
【问题讨论】:
-
试试这个,我想这会很有帮助github.com/commonsguy/cwac-endless你可以使用无限适配器。