2011-06-05 59 views
1

我在Android的Gridview有问题。Gridview getChildAt隐藏字段

上下文: 我有一个gridview,下载的图像列表(大约100图像)。

为了让用户更方便,第一个gridview加载,里面有100张图片,里面有一个logo加载。 在那之后,我开始一个的AsyncTask是: 在onProgressUpdate =>更新与gridview.getChildAt 图像与位图的列表GridView控件的onPostExecute =>更改适配器下载

我的问题是onProgressUpdate。 当使用getChildAt(position)时,我意识到该位置意味着物品在可见矩形中的位置。所以有两个问题: =>首先,隐藏的图像没有更新(这就是为什么我在PostExecute中执行setAdapter) =>第二,如果我在下载时滚动,它会忘记第一张图像和其他一些问题滚动,但很难用文字表达...

我的问题有点简单,但我没有在Android Reference中找到,也没有在Google搜索中找到: - 如何更新视图gridview的真实位置,而不是通过可见的位置?

非常感谢

回答

1

不可见的视图不存在,因此您无法更新它们。一旦用户滚动到特定项目,您只能更新您的支持模型以获取正确的信息。因此,您需要做的是检索图像并将其保存在缓存(或模型本身)中,您可以在渲染特定视图时访问它们。

但是,我建议不需要检索用户没有看到的任何图像。