0

我正在尝试根据它在网格视图中的位置来检索图像视图。

例如:

int lastvisibleposition = gridView.getLastVisiblePosition();
    int firstvisibleposition = gridView.getFirstVisiblePosition();

这给了我两个位置,(例如 0、1)

我认为我可以:

gridView.getItemAtPosition(lastvisibleposition)

" getItemAtPosition "获取与列表中指定位置关联的数据。

所以我假设我可以将它转换为 ImageView。

ImageView imageView = (ImageView) gridView.getItemAtPosition(lastvisibleposition);

但 imageView 为空。我不明白如何弄清楚 gridview 正在返回什么,和/或如何到达 imageview 以便我可以继续。

如何获得实际的图像视图?我正在做这一切,所以我可以在屏幕底部有一个按钮导致对屏幕上“最多”项的操作 - 这是一个垂直滚动画廊,所以如果我可以返回两个图像视图,我可以比较多少每个图像视图实际上都在屏幕上(使用 imageView.getLocationOnScreen(...))并导致对用户想要的图像执行操作。

谢谢。

4

1 回答 1

0

在此之前,我个人会检查返回的对象的类型,然后再将其转换为 ImageView:

ImageView imageView = (ImageView) gridView.getItemAtPosition(lastvisibleposition);

尝试添加此代码:

Object temp = gridView.getItemAtPosition(lastvisibleposition);

调试并检查 temp 的类型以确保它可以转换为 imageview。

于 2013-03-29T20:22:05.323 回答