【发布时间】:2014-07-28 19:46:42
【问题描述】:
我有一个列表视图,其项目包含几个执行动画的自定义视图。问题是即使该项目仅部分显示这些动画也会发生,因此如果视图位于该项目的底部,那么动画在屏幕外发生得太快而您看不到它。
是否有一个回调或类似的我可以挂钩来检测 Listview 项目中的这个 View 何时真正出现在屏幕上,然后在那个时候运行动画?
【问题讨论】:
-
在列表视图中设置滚动监听器并检查 onScroll() 中的 firstVisibleItem
-
问题在于 View 本身需要知道它何时会显示在屏幕上。我可以设置一个滚动侦听器,但这只会返回整个列表项。当包含该动画视图的列表项部分刚刚滚动到屏幕上时,我需要制作动画。
-
如果您的所有视图都没有相同的高度,我不知道该怎么做。如果您的视图高度相同,您可以检查当前滚动位置与 viewHeight*viewPosition
标签: android listview android-listview