Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用背景图像时Xamarin Monodroid应用程序OutOfMemory异常_C#_Android_Xamarin.android_Xamarin_Mvvmcross - Fatal编程技术网

C# 使用背景图像时Xamarin Monodroid应用程序OutOfMemory异常

C# 使用背景图像时Xamarin Monodroid应用程序OutOfMemory异常,c#,android,xamarin.android,xamarin,mvvmcross,C#,Android,Xamarin.android,Xamarin,Mvvmcross,日志文件中出现以下消息后,我的应用程序崩溃: [dalvikvm heap]强制收集用于4320012字节分配的软引用 [dalvikvm heap]在4320012字节分配上内存不足 当我使用颜色而不是图片作为背景页面时,应用程序不会崩溃。 在打开下一页时,似乎没有释放为背景图像分配的内存。我将页面背景设置如下: <resources> <style name="Theme.AppPage" parent="android:Theme"> <item

日志文件中出现以下消息后,我的应用程序崩溃:

[dalvikvm heap]强制收集用于4320012字节分配的软引用 [dalvikvm heap]在4320012字节分配上内存不足

当我使用颜色而不是图片作为背景页面时,应用程序不会崩溃。 在打开下一页时,似乎没有释放为背景图像分配的内存。我将页面背景设置如下:

<resources>
  <style name="Theme.AppPage" parent="android:Theme">
    <item name="android:windowBackground">@drawable/splash_final</item>
    <item name="android:windowNoTitle">true</item>
  </style>
</resources>
正如您可能发现的,我也使用MvvmCross,可能问题与此框架有关


有人能帮我吗?

可能的复制也可以在这里尝试许多其他点击-例如,使用较小的图像并确保使用inPurgable可能会有所帮助。还要注意的是,不同的android版本表现不同——在《Ok》中有一篇关于2011年图像内存管理的很好但很低级的演讲,我检查了所有这些链接,没有找到适合我的足够好的解决方案。第一个链接中的Cheesebaron建议将主题与背景一起使用,我已经这样做了,并将ActivityFlags.NewTask | ActivityFlags.ClearWhenTaskReset选项传递给intent,事件此解决方案不是100%可靠的。因为我使用的是MvvmCross,我甚至无法控制启动新活动的代码,所以我只使用ShowViewModel;在ViewModels中。。。我需要分叉和更改框架的代码来执行这样一个简单的任务吗?我简直不敢相信这不是开箱即用的。。。好吧,有几十亿台安卓设备和几十万个应用程序。我们不能使用图像作为页面背景吗?这太糟糕了…谢谢-我不认为forking会帮到你-这与ShowViewModel或MvvmCross无关-这是一个基本的Android内存管理问题。
[Activity (Theme = "@style/Theme.AppPage", NoHistory = false)]
public class MainMenuView : MvxActivity