我有显示图像和进度栏的gridview。每个项目都包含进度条,并在下载相应文件时显示进度。在滚动gridview时,进度条反复显示错误项目的进度,而我正在使用一个Viewholder。请给我一个解决方案...

最佳答案

问题在于,当ProgressBar对象在屏幕外滚动时,它们会被系统任意重用。

这意味着,当一个ProgressBar滚动到屏幕外时,它会在出现该项目时在新的网格位置重新使用。

解决方案相当简单。在getView()中,无论下载状态如何,都必须设置每个ProgressBar的进度值和可见性(如果在不使用时将其隐藏)。为此,您将保存每个网格位置的进度值和下载状态,这些位置可能已经可用。

关于android - Android中每个gridview项中的进度栏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15985194/

10-10 18:30
查看更多