我的目标是有一个带有灰色地图的简单屏幕和你点击的每个按钮,地图的一个不同部分被绘制。
我尝试将地图放在一张图片中,每次点击一个按钮,我都会用颜色显示地图的一部分,如:
我正在使用ConstraintLayout,我把一个图像放在另一个上面。最后我们应该有:
但是,当我尝试在我的手机中打开它会出现一些“OutOfMemory”错误,但每张图片都是13-16KB,不是很多。在我调用此活动之前,我使用intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
关闭了所有活动
我做了一个测试,所有我的java代码都被注释,我的xml几乎都被评论,如果我有一两张图片工作,但如果我把第三个给出错误。
我开始认为这是关于PNG中空白空间的事情。
但我不确定,有什么想法或解决方案吗?谢谢。
启动allocation tracking
然后你将看到哪些方法占用了那个内存。图像的内存大小并不重要。它可以扩展,你有很多图像。 Tint
是你寻找的属性。
使用Android Profiler(底部选项卡)查看内存分配。如果您的图表增长缓慢(可能高达100 Mb或更高),它将不会使应用程序崩溃。