检测到getView()调用已完成。

时间:2012-11-29 08:12:54

标签: android adapter

我一直在搜索最后一个getView()完成执行时调用的回调方法,或者我可能会说AdapterView中的所有项都被绘制/放置。

我发现没有任何特定的android api方法可以作为回调方法。

请大家帮我找一个方法,我们如何检测对特定数据源列表的最后一次getView()的调用。

2 个答案:

答案 0 :(得分:0)

没有最后的getView()

当您在列表中滚动时,对于每个将变为可见的项目,将调用getView。即使它已经在屏幕上了。

因此,如果您想知道ListView中的每个项目是否可见,您必须依靠自己:)。

答案 1 :(得分:0)

这是因为它总是被调用。每次滚动getView()时都会调用ListView。如果某个项目位于ListView之外(对用户不可见),则会将其作为回收视图(convertView)传递给getView(),以便将其作为新项目填充数据这将从卷轴的另一侧插入。您也无法预测此操作,因为ListView中的可见项目数将根据屏幕大小而变化。您可以覆盖getView()并检查您需要触发操作的位置。