我使用SimpleAdapter
创建了Android ListView
,该项目中的项目多于屏幕中的项目。列表滚动后,我需要获取列表中第一个可见项目的数据模型中的位置。Android ListView:获取可见项目的数据索引
基本上我想要一个功能,如:listView.getChildAt(0).getPositionInDataModel()
。
Adapter
有一些功能,如getItemId(position)
看起来很有用;然而,SimpleAdapter
实现只是返回传入的位置,而不是像我希望的行ID。
蛮力的解决方案是获取索引0处的视图,并将其与适配器中每个项目的视图进行比较。但是,从适配器获取特定位置的视图似乎并不容易。
任何人有任何想法?
哇,我不能相信我错过了。我正在寻找一个这样的功能。一定是因为它是在我没有料到的父类中定义的。仍然习惯了这种javadoc风格... 感谢您指出! – 2010-01-04 21:49:55
@RomainGuy,您保存了我的ListView性能... – 2014-01-28 09:30:48
getFirstVisiblePosition()和getLastVisiblePosition()之间的某些视图在我的Gridview中返回null。我正在回收视图 - 是原因吗?我希望可见的视图保证不为空,特别是因为我可以直观地看到它们不是。 – Laurent 2015-02-27 08:49:39