بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
کتابخانه universal image loader و درج اشتباه تصاویر
برنامه ای مثل گالری تصاویر استاد درست کردم ولی out of memory خطا داد. برای حل این مشکل از کتابخانه universal loaderاستفاده کردم .بار اول برنامه درست اجرا میشه ولی در دفعات بعد تصاویر رو جابجا قرار میده.این کد resetViewBeforeLoading(true) رو هم به قسمت option اضافه کردم ولی فایده ای نداره .دوستان راه حلی میدونین برای حل این مشکل؟
این کد رو توی ImagePagerAdapter اضافه کردم
public final DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.saba)
.cacheInMemory(true)
.cacheOnDisk(true)
.considerExifParams(true)
.resetViewBeforeLoading(true)
.displayer(new SimpleBitmapDisplayer())
.handler(HANDLER)
.build();
public static void initImageLoader(Context context) {
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context)
.threadPriority(Thread.NORM_PRIORITY - 2)
.denyCacheImageMultipleSizesInMemory()
.diskCacheFileNameGenerator(new Md5FileNameGenerator())
.diskCacheSize(50 * 1024 * 1024)
.tasksProcessingOrder(QueueProcessingType.LIFO)
.build();
ImageLoader.getInstance().init(config);
}
@Override
public Object instantiateItem(ViewGroup container, final int position) {
View view = G.layoutInflater.inflate(R.layout.sample, null);
TextView text = (TextView) view.findViewById(R.id.text);
ImageView image = (ImageView) view.findViewById(R.id.image);
image.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(G.context, FirstPlay.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("page", position);
G.context.startActivity(intent);
}
});
imageLoader.displayImage("drawable://" + imageIds.get(position), image, options);
container.addView(view);
return view;
}
و در MainActivity
ImagePagerAdapter.initImageLoader(getApplicationContext());
برای این سوال پاسخی وجود ندارد.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .