0

我需要实现一个拇指网格视图。但是当我的应用点击 200 个拇指时,它开始出现内存问题(当然)。我需要实现延迟加载,但我不知道如何检测滚动查看器在 gridview 上的位置,因此我可以在它到达末尾时尝试加载更多图像。

这是我的gridview布局: 例子

有谁知道该怎么做?

4

2 回答 2

1

ISupportIncrementalLoading在您的源集合中实施以支持数据虚拟化,GridView并将自行处理请求更多项目。还要确保您没有将您的ItemsPanelof your更改为GridView不支持 UI 虚拟化的 - 例如VariableSizedWrapGrid.

还要确保您不会因为任何其他原因而简单地发生内存泄漏。通常,UI 虚拟化(默认)的 200 项网格不应使用那么多内存,除非您的拇指实际上比您需要显示它们的分辨率大得多。检查此问题以了解调试泄漏的方法。

于 2013-06-10T15:08:05.040 回答
0

您可以自己创建拇指:仅创建较小的图像 - 仅此而已。

   new BitmapImage(new Uri(Path)) {DecodePixelWidth = 200}
于 2013-06-19T09:14:13.973 回答