动态列表视图 - 设计模式

时间:2013-04-17 08:36:12

标签: android performance algorithm listview design-patterns

我必须在此Mockup中实现设计,我的列表将从服务器获取实时数据并对其进行缓存。

该列表将包含大图片,最多 1000件商品

  • 用户将设置限制。
  • 图像可以是任何大小,以MB或任何分辨率。
  • 如果太大,我肯定会重新调整图像大小。

向上和/或向下滚动时,列表应加载本地缓存(存储)的数据或从服务器下载。

由于这样庞大的列表需要大量内存和处理(移动设备无法使用),我需要应用非常优化的设计模式。

问题

有人可以为此建议任何设计模式吗?

你会如何实现这个?

相关问题: List View Design Pattern

3 个答案:

答案 0 :(得分:1)

Commonsguy(Mark Murphy)在这里实施了一个非常好的无尽的列表视图:

https://github.com/commonsguy/cwac-endless

它避免为listview加载大型数据集,并允许用户在滚动时滚动越来越多的元素。我测试了它,它非常整洁:当你到达底部时添加的元素数量,异步加载等等。你将不得不处理向后滚动部分因为实际上,当你向下滚动时滚动是动态递增的(不是向上)。

答案 1 :(得分:0)

您可以将图像和数据存储在数据库中,您可以使用缓存并使用后台进程(如服务)填充数据库。

答案 2 :(得分:0)

在你的情况下,因为你有大量的数据专用图像,你应该使用Loader类概念,如Google IO-2010中的rominGuy所解释的那样  在这里,当它离开视图时,你会重复使用每一行,而另一行则是可见性。