我有一个从Web服务获取数据的活动。 Web服务的输出包含多组一个Web URL和一些文本。 URL指向图像。通过创建包含imageview和textview的线性布局来显示每个集合。因此,对于200套,我将有200个布局,200个图像视图和200个textiews。我知道列表视图会是一个更好的解决方案,但我现在已经在项目中走得太远,无法改变它。
目前,我在显示活动之前下载所有图像。我下载了大约200张图片,将来这可能会超过1000张。 我想仅在图像视图出现在屏幕上时才下载图像。我正在考虑的方法是创建一些监听器或事件,以便一旦图像视图或布局出现在屏幕上,下载就开始了。我搜索了很多,但找不到一个好的解决方案。 我的问题是让听众无法开始下载。
某些解决方案建议延迟加载但这仍然意味着所有图像都已加载,这对于下载容量有限的用户来说是不合适的。
编辑:我不想加载所有图像,只显示屏幕上显示的图像。每次用户滚动时,屏幕上显示的新图像视图也会开始下载。
答案 0 :(得分:0)
我最终使用了一种不同的更简单的方法,在此link上使用@ Akos的解决方案来检测滚动视图的结束。活动开始后,我加载10个布局。滚动视图到达结尾后,我会显示一个进度对话框并再加载10个布局。