android-getFirstVisiblePosition()在Gallery View中返回错误的值

前端之家收集整理的这篇文章主要介绍了android-getFirstVisiblePosition()在Gallery View中返回错误的值 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个使用扩展BaseAdapter的SimpleAdapter创建的Gallery视图.它包含的项目超出了屏幕所能容纳的范围.

所以我正在使用Gallery.getFirstVisiblePosition()和Gallery.getLastVisiblePosition()来获取第一个和最后一个可见位置.但是这些函数并不总是返回正确的值,尤其是在通过调用mGallery.setSelection()并随后调用SimpleAdapter.notifyDataChanged()设置选定位置之后.大多数情况下,即使第一个元素不可见,它的getFirstVisiblePosition()也会返回0.

另请注意,没有.纵向和横向模式下“图库”中可见项目的数量有所不同. getFirstVisiblePosition()返回的值在横向上看起来正确,但在纵向模式下返回错误.

有人有什么想法/想法吗?

谢谢!

最佳答案
仅在布局后才会更新第一个可见位置.您不能调用notifyDatasetChanged()并立即获得第一个可见位置,必须等待下一个布局传递.

猜你在找的Android相关文章