我有一个显示一些项目的ListView。我想对当前在可见部分的ListView上执行一些操作,具体取决于ListView的滚动方式。因此,我打算实现ListView的OnScrollListener。
根据Android API参考,onScroll方法“将在滚动完成后调用”。这对我来说似乎就是我需要的,因为一旦滚动完成,我就可以对ListView执行我的操作(onScroll方法返回第一个显示项的索引和显示的项数)。
但是一旦实现,我从LogCat中看到onScroll方法不仅在滚动完成后触发,而且会为每个进入显示视图的新项触发,从滚动开始到结束。这不是我期望的行为,也不是我需要的行为。监听器的另一个方法(onScrollStateChanged)则无法提供有关ListView中当前显示的项目的信息。
那么,有人知道如何使用这对方法来检测滚动的结束并获取有关显示项目的信息吗?API参考和方法的实际行为之间的不一致使我有点困惑。
先谢谢了。
注:我看到了一些类似的话题,但没有任何帮助我理解整个过程...!
根据Android API参考,onScroll方法“将在滚动完成后调用”。这对我来说似乎就是我需要的,因为一旦滚动完成,我就可以对ListView执行我的操作(onScroll方法返回第一个显示项的索引和显示的项数)。
但是一旦实现,我从LogCat中看到onScroll方法不仅在滚动完成后触发,而且会为每个进入显示视图的新项触发,从滚动开始到结束。这不是我期望的行为,也不是我需要的行为。监听器的另一个方法(onScrollStateChanged)则无法提供有关ListView中当前显示的项目的信息。
那么,有人知道如何使用这对方法来检测滚动的结束并获取有关显示项目的信息吗?API参考和方法的实际行为之间的不一致使我有点困惑。
先谢谢了。
注:我看到了一些类似的话题,但没有任何帮助我理解整个过程...!