我有一个listbox
我load images dynamically from the web as user scrolls
。将其视为无限卷轴。我当前的display size is 72X72
. 但是,如果我increase the display size to 288x288 (4 times)
在滚动应用程序几分钟后退出给出outofmemory system error
. 它已经开始经常出现在我512MB device
的大图像上。这让我很担心,因为它会在设备上发生得更快256 MB
。如何处理 try catch 不处理这些系统错误的情况?most optimum
处理如此庞大的图像列表的方法是什么?
问问题
734 次
2 回答
2
我也经历过 WP7 或 WP7.5 的这个问题。
Windows phone 7 中的图像存在一个巨大的问题。
当从独立存储作为流读取并设置为位图类对象的源时,大小为 900kb 的图像比你会看到内存使用量发生巨大变化/上升(在我的案例 5-6MB)。
只要浏览这个网站,你就会明白其余的。
Silverlight-s-big-image-problem-and-what-you-can-do-about-it
对于长图像列表问题
1. 缩小从服务器获取的图像。
2. 使用LongListSelector 工具使用数据虚拟化技术列出图像
于 2012-10-18T12:48:31.553 回答
0
您可以使用 Jeff Wilcox MemoryDiagnosticHelper来控制内存使用情况。如果大约 90 mb,您可以运行图像清理过程。Image.Source = null
只需为用户目前看不到的图像卸载 BitMaps ( )。
压缩图像也是一种很好的做法(例如使用服务器端压缩)。
于 2012-10-18T07:50:59.387 回答