我有显示图像和进度栏的gridview。每个项目都包含进度条,并在下载相应文件时显示进度。在滚动gridview时,进度条反复显示错误项目的进度,而我正在使用一个Viewholder。请给我一个解决方案...
最佳答案
问题在于,当ProgressBar
对象在屏幕外滚动时,它们会被系统任意重用。
这意味着,当一个ProgressBar
滚动到屏幕外时,它会在出现该项目时在新的网格位置重新使用。
解决方案相当简单。在getView()
中,无论下载状态如何,都必须设置每个ProgressBar
的进度值和可见性(如果在不使用时将其隐藏)。为此,您将保存每个网格位置的进度值和下载状态,这些位置可能已经可用。
关于android - Android中每个gridview项中的进度栏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15985194/