启动其他活动时ImageView内存泄漏

我有一个名为Test1的简单活动。启动其他活动时ImageView内存泄漏" title="内存泄漏">内存泄漏

这是布局代码。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 

xmlns:tools="http://schemas.android.com/tools"

android:id="@+id/test"

android:layout_width="match_parent"

android:layout_height="match_parent"

>

<ImageView

android:id="@+id/imageview1"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:adjustViewBounds="true"

android:src="@drawable/load"

android:scaleType="fitXY" />

</RelativeLayout>

在我onDestory的方法,我松开mImageView资源和Android的分布是,mImageView记忆真的被回收。

@Override 

protected void onDestroy() {

super.onDestroy();

releaseImageViewResource(mImageView);

layout.removeView(mImageView);

mImageView.setVisibility(View.GONE);

mImageView.setImageDrawable(null);

mImageView = null;

}


但是当我启动其他简单的活动中,mImageView该内存不能被回收。为什么以及如何解决问题?

回答:

为了处理图像,我建议你使用像Glide或Picasso这样的库,他们会为你处理所有的东西。 (内存泄漏,缓存等)

回答:

不确定你的意思是“开始其他简单的活动”,但如果你要去应用程序内的另一个活动,那么你当前的活动(与图像视图)应该暂停被摧毁。要么当你去其他活动时调用finish(),要么只需在onPause()方法中放入onDestroy()代码

以上是 启动其他活动时ImageView内存泄漏 的全部内容, 来源链接: utcz.com/qa/260577.html

回到顶部