为什么Android在RAM中存储动态视图?

为什么Android在RAM中存储动态视图?,android,memory-management,ram,Android,Memory Management,Ram,这个问题可能看起来很奇怪,但我遇到了安卓应用程序的问题。我正在使用布局充气器为我的Android应用程序动态创建视图,该视图包含图像。大多数图像小于800kb。因此,当我打开应用程序时,它开始使用大量内存,当我切换到另一个活动时,它也会添加更多包含图像的内存。当我退出活动并返回到第一个活动时,它不是在清洁RAM。由于公司的政策,我不能在这里添加我的实际代码,但这里是我正在做的工作的片段 我有两个活动HomeActivity和DisplayActivity。在家庭活动中,我有空的滚动视图。我正在进

这个问题可能看起来很奇怪,但我遇到了安卓应用程序的问题。我正在使用布局充气器为我的Android应用程序动态创建视图,该视图包含图像。大多数图像小于800kb。因此,当我打开应用程序时,它开始使用大量内存,当我切换到另一个活动时,它也会添加更多包含图像的内存。当我退出活动并返回到第一个活动时,它不是在清洁RAM。由于公司的政策,我不能在这里添加我的实际代码,但这里是我正在做的工作的片段

我有两个活动
HomeActivity
DisplayActivity
。在家庭活动中,我有空的滚动视图。我正在进行db查询以获取信息。使用布局充气机

for (DataModel d : dm) {
JSONObject dataJson = new JSONObject(d.getData());


View headerCard = LayoutInflater.from(HomeActivity.this).inflate(R.layout.head_card, null);

ImageView cardHeadImage = (ImageView) headerCard.findViewById(R.id.head_card_header_image);
TextView cardNote = (TextView) headerCard.findViewById(R.id.head_card_note);

String imageLink = dataJson.getJSONObject("data").getString("article_image");

String note = dataJson.getJSONObject("data").getString("article_title");

imageLoader.displayImage(h.getMediaURL() + imageLink, cardHeadImage);
cardNote.setText(note);


scrollViewChild.addView(headerCard);
}
因此,当我不添加图像时,它使用的内存更少。我缓存了图像。所以我的问题是,在视图生成并放置在显示器中之后,是否有可能清除RAM?如果需要,我可以提供更多信息。但基本上这就是我的两项活动的运行方式

imageLoader
分三步工作。1) 检查缓存的图像。2) 若未缓存图像,则下载图像并缓存它。3) 在imageview中显示图像。第二步大部分时间将被跳过,因为大部分图像都可以从缓存中获得


谢谢D

您可以做些什么来减少RAM的使用量。@shryashssarnayak,我已经试过了。它在RAM中没有太大区别,而且显示的图像不清晰。