Android 从ImageAdapter GridLayout获取视图-OutofMemoryError
我的ImageAdapter出现了“内存不足”错误,我尝试了一些重用ImageView的解决方案,但不起作用,我希望任何解决方案都能帮助我:) 我有一些类似的应用程序,但没有这个问题,可以肯定的是,在这个应用程序上我有290个不同的图像,而另一个应用程序我只有一个:),我认为convertView==null可以解决outOfMemory问题 更多信息:Android 从ImageAdapter GridLayout获取视图-OutofMemoryError,android,image,out-of-memory,grid-layout,Android,Image,Out Of Memory,Grid Layout,我的ImageAdapter出现了“内存不足”错误,我尝试了一些重用ImageView的解决方案,但不起作用,我希望任何解决方案都能帮助我:) 我有一些类似的应用程序,但没有这个问题,可以肯定的是,在这个应用程序上我有290个不同的图像,而另一个应用程序我只有一个:),我认为convertView==null可以解决outOfMemory问题 更多信息: -只有20个图像的大小超过100kb,其中只有3个大于500k,Android程序比大多数程序复杂得多,图像在Ram中占用的内存似乎比在磁盘上
-只有20个图像的大小超过100kb,其中只有3个大于500k,Android程序比大多数程序复杂得多,图像在Ram中占用的内存似乎比在磁盘上占用的内存要多得多。尽管如此,有一件事你可以很容易地做到,还有一些其他的提示
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView;
if (convertView == null) {
imageView = new ImageView(mContext);//Creamos la imagen sólo si no existe
} else {
imageView = (ImageView) convertView;//Sino reusamos el objeto
}
//Todas con el mismo ancho
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setLayoutParams(new GridView.LayoutParams(70, 70));
imageView.setImageResource(mThumbIds[position]);
return imageView;
}