我在Xamarin.Forms应用程序的工作,的ImageSource没有布置和创建OutOfMemoryException异常
在我的页面之一,我有多个自定义StackLayout(ActivityTypeView)包含图像。这些StackLayout是在我的页面中的Grid中创建和添加的。
里面我ActivityTypeView我设置图片来源如下:
WorkIcon.Source = ImageSource.FromFile("disable.png");
(我的图像保存在我的绘制文件夹)
的问题是,当我去到另一个网页,回来多在尝试加载图像时,我总是以OutOfMemory异常结束。
我想我的ImageSource不会被销毁/丢弃当我改变页面。因此,在多次重新加载同一页面之后,它总是会出现此错误。
我想知道如何处理这种情况。我该如何正确处置资源以及何时处理?
使用FFImageLoadingLibrary修复了我的崩溃!我想使用Xamarin分析器来查看内存发生了什么,但我不拥有Visual Studio Enterprise来监视我的应用程序。 你知道内存是否在某个时候被释放?或者图书馆只是在应用程序运行时缓存图片? –
@LucienMoor很高兴听到!在我的情况下,图书馆将图像加载到内存一次,并重复使用它。这样我们就不必担心内存被释放了。你会注意到从长远来看使用这个库是非常值得的。 – hankide