У меня около 53 изображений для отображения в gridview из drwable. Но я делал это, делая это. Поэтому я начал использовать универсальный загрузчик изображений для кэширования этих изображений на диск и вытащить его оттуда ..! Но я все еще получаю ум. Вот моя конфигурацияOutOfMemoryError при использовании универсального загрузчика изображений в gridview
imageLoader =ImageLoader.getInstance();
if (android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED))
cacheDir=new File(android.os.Environment.getExternalStorageDirectory(),"icons");
else
cacheDir=mContext.getCacheDir();
if(!cacheDir.exists())
cacheDir.mkdirs();
config= new ImageLoaderConfiguration.Builder(mContext)
.memoryCache(new WeakMemoryCache())
.denyCacheImageMultipleSizesInMemory()
.threadPoolSize(2)
.offOutOfMemoryHandling()
.discCache(new UnlimitedDiscCache(cacheDir))
.enableLogging()
.build();
imageLoader.init(config);
options = new DisplayImageOptions.Builder()
.cacheOnDisc()
.bitmapConfig(Bitmap.Config.RGB_565)
.imageScaleType(ImageScaleType.IN_SAMPLE_INT)
.build();
и это мой GetView() из BaseAdapter
public View getView(int position, View convertView, ViewGroup parent) {
if(convertView==null)
{
ViewHolder holder=new ViewHolder();
inflator = mContext.getLayoutInflater();
convertView = inflator.inflate(R.layout.imagelayout, null);
holder.imageView=(ImageView)convertView.findViewById(R.id.imgDet);
convertView.setTag(holder);
}
ViewHolder hold=(ViewHolder)convertView.getTag();
try
{
imageLoader.displayImage("drawable://" +mThumbIds[position], hold.imageView, options,new ImageLoadingListener() {
@Override
public void onLoadingStarted(String arg0, View arg1) {
// TODO Auto-generated method stub
}
@Override
public void onLoadingFailed(String arg0, View arg1, FailReason arg2) {
// TODO Auto-generated method stub
}
@Override
public void onLoadingComplete(String arg0, View arg1, Bitmap arg2) {
// TODO Auto-generated method stub
}
@Override
public void onLoadingCancelled(String arg0, View arg1) {
// TODO Auto-generated method stub
}
});
}catch(OutOfMemoryError oom)
{
oom.printStackTrace();
}
catch(Exception ex)
{
ex.printStackTrace();
}
return convertView;
}
пожалуйста, помогите мне с этим.
Вам действительно нужен UIL для отображения изображений из чертежей? Почему бы вам просто не использовать 'imageView.setImageResource (...)'? – NOSTRA