嗨极客!
这是使用ListView的问题。
生成单个列表项视图时,在BaseAdapter.getView的方法中,可能会发出一些连续的异步远程数据请求,例如获取人物的照片。
但是当响应返回时,列表项视图可能会被重用,因为ListView的工作原理。我无法找到正确的观点来回应。
你是怎么解决这个问题的?
答案 0 :(得分:1)
正如您所说,当您加载图像时,很有可能列表项不再可见或甚至不存在。因此,您可以使用ListView.getFirstVisiblePosition()和ListView.getLastVisiblePosition()检查屏幕上的内容,如果是onScreen则获取项目并设置图像。否则你必须缓存图像(内存或SD卡,具体取决于图像的数量和大小),下次为该项目调用getView()时,只需使用缓存的图像。
我希望有所帮助。
答案 1 :(得分:0)