日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android universal-image-loader的使用

發布時間:2024/9/5 编程问答 66 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android universal-image-loader的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 全局配置 android-image-loader的使用
  • public?class Application?extends?Application?{??
  • ??
  • ????@Override??
  • ????public?void?onCreate()?{??
  • ????????super.onCreate();??
  • ????????initImageLoader(getApplicationContext());??
  • ????}??
  • ??
  • ????public?static?void?initImageLoader(Context?context)?{??
  • ????????//緩存文件的目錄??
  • ????????File?cacheDir?=?StorageUtils.getOwnCacheDirectory(context,?"universalimageloader/Cache");???
  • ????????ImageLoaderConfiguration?config?=?new?ImageLoaderConfiguration.Builder(context)??
  • ????????????????.memoryCacheExtraOptions(480,?800)?//?max?width,?max?height,即保存的每個緩存文件的最大長寬???
  • ????????????????.threadPoolSize(3)?//線程池內線程的數量??
  • ????????????????.threadPriority(Thread.NORM_PRIORITY?-?2)??
  • ????????????????.denyCacheImageMultipleSizesInMemory()??
  • ????????????????.diskCacheFileNameGenerator(new?Md5FileNameGenerator())?//將保存的時候的URI名稱用MD5?加密??
  • ????????????????.memoryCache(new?UsingFreqLimitedMemoryCache(2?*?1024?*?1024))??
  • ????????????????.memoryCacheSize(2?*?1024?*?1024)?//?內存緩存的最大值??
  • ????????????????.diskCacheSize(50?*?1024?*?1024)??//?SD卡緩存的最大值??
  • ????????????????.tasksProcessingOrder(QueueProcessingType.LIFO)??
  • ????????????????//?由原先的discCache?->?diskCache??
  • ????????????????.diskCache(new?UnlimitedDiscCache(cacheDir))//自定義緩存路徑????
  • ????????????????.imageDownloader(new?BaseImageDownloader(context,?5?*?1000,?30?*?1000))?//?connectTimeout?(5?s),?readTimeout?(30?s)超時時間????
  • ????????????????.writeDebugLogs()?//?Remove?for?release?app??
  • ????????????????.build();??
  • ????????//全局初始化此配置????
  • ????????ImageLoader.getInstance().init(config);??
  • ????}??
  • }?
  • ?

    ?

    主要類文件

  • public?class?MainActivity?extends?Activity?{??
  • ????private?ImageLoader?imageLoader;??
  • ????private?ListView?lv;??
  • ????private?String[]?imageUrls;??
  • ????private?DisplayImageOptions?options;??
  • ??
  • ????@Override??
  • ????protected?void?onCreate(Bundle?savedInstanceState)?{??
  • ????????super.onCreate(savedInstanceState);??
  • ????????setContentView(R.layout.activity_main);??
  • ????????imageLoader?=?ImageLoader.getInstance();??
  • ????????lv?=?(ListView)findViewById(R.id.list);??
  • ??????????
  • ????????imageUrls?=?Constants.images;??
  • ??
  • ????????//?使用DisplayImageOptions.Builder()創建DisplayImageOptions??
  • ????????options?=?new?DisplayImageOptions.Builder()??
  • ????????????????.showImageOnLoading(R.drawable.ic_stub)?//?設置圖片下載期間顯示的圖片??
  • ????????????????.showImageForEmptyUri(R.drawable.ic_empty)?//?設置圖片Uri為空或是錯誤的時候顯示的圖片??
  • ????????????????.showImageOnFail(R.drawable.ic_error)?//?設置圖片加載或解碼過程中發生錯誤顯示的圖片??
  • ????????????????.cacheInMemory(true)?//?設置下載的圖片是否緩存在內存中??
  • ????????????????.cacheOnDisk(true)?//?設置下載的圖片是否緩存在SD卡中??
  • ????????????????.displayer(new?RoundedBitmapDisplayer(20))?//?設置成圓角圖片??
  • ????????????????.build();?//?構建完成??
  • ????????lv.setAdapter(new?ItemListAdapter());??
  • ????}??
  • ??
  • ????@Override??
  • ????public?boolean?onCreateOptionsMenu(Menu?menu)?{??
  • ????????//?Inflate?the?menu;?this?adds?items?to?the?action?bar?if?it?is?present.??
  • ????????getMenuInflater().inflate(R.menu.main,?menu);??
  • ????????return?true;??
  • ????}??
  • ??
  • ????@Override??
  • ????public?boolean?onOptionsItemSelected(MenuItem?item)?{??
  • ????????switch?(item.getItemId())?{??
  • ????????????case?R.id.item_clear_memory_cache:??
  • ????????????????ImageLoader.getInstance().clearMemoryCache();??
  • ????????????????return?true;??
  • ????????????case?R.id.item_clear_disc_cache:??
  • ????????????????ImageLoader.getInstance().clearDiskCache();??
  • ????????????????return?true;??
  • ????????????default:??
  • ????????????????return?false;??
  • ????????}??
  • ????}??
  • ??
  • ????class?ItemListAdapter?extends?BaseAdapter?{??
  • ????????@Override??
  • ????????public?int?getCount()?{??
  • ????????????//?TODO?Auto-generated?method?stub??
  • ????????????return?imageUrls.length;??
  • ????????}??
  • ??
  • ????????@Override??
  • ????????public?Object?getItem(int?position)?{??
  • ????????????//?TODO?Auto-generated?method?stub??
  • ????????????return?imageUrls[position];??
  • ????????}??
  • ??
  • ????????@Override??
  • ????????public?View?getView(int?position,?View?convertView,?ViewGroup?parent)?{??
  • ????????????//?TODO?Auto-generated?method?stub??
  • ????????????ViewHolder?holder?=?null;??
  • ????????????if?(convertView?==?null)?{??
  • ????????????????convertView?=?getLayoutInflater().inflate(R.layout.item_list,?parent,?false);??
  • ????????????????holder?=?new?ViewHolder();??
  • ????????????????holder.text?=?(TextView)?convertView.findViewById(R.id.text);??
  • ????????????????holder.image?=?(ImageView)?convertView.findViewById(R.id.image);??
  • ????????????????convertView.setTag(holder);??
  • ????????????}?else?{??
  • ????????????????holder?=?(ViewHolder)?convertView.getTag();??
  • ????????????}??
  • ????????????holder.text.setText("Item?"?+?(position?+?1));??
  • ????????????imageLoader.displayImage(imageUrls[position],?holder.image,?options);??
  • ????????????return?convertView;??
  • ????????}??
  • ??
  • ????????@Override??
  • ????????public?long?getItemId(int?position)?{??
  • ????????????//?TODO?Auto-generated?method?stub??
  • ????????????return?position;??
  • ????????}??
  • ??
  • ????????class?ViewHolder?{??
  • ????????????public?ImageView?image;??
  • ????????????public?TextView?text;??
  • ????????}??
  • ????}??
  • ??
  • }?
  • 轉載于:https://www.cnblogs.com/zhou2016/p/5600941.html

    總結

    以上是生活随笔為你收集整理的android universal-image-loader的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。