博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第三方开源库:imageLoader的使用
阅读量:4129 次
发布时间:2019-05-25

本文共 2635 字,大约阅读时间需要 8 分钟。

效果图:

注意:若app中需要使用圆角图片,且图片是根据url获取的,可以使用imageLoader,只需在参数设置中:displayer(new RoundedBitmapDisplayer(int rounded))

imageLoader使用步骤:

1 初始化

2 设置参数

3 display()

1 初始化:在application的onCreate()方法中初始化

public class MyApplication extends Application {	@Override	public void onCreate() {		super.onCreate();		// imageLoader要在application的oncreate()方法中初始化		initImageLoader();	}		public void initImageLoader() {		//imageLoader要在application的oncreate()方法中初始化		//1 设置参数		ImageLoaderConfiguration.Builder config = new ImageLoaderConfiguration.Builder(getApplicationContext());				config.threadPriority(Thread.NORM_PRIORITY - 2);		config.denyCacheImageMultipleSizesInMemory();//不会在内存中缓存多个大小的图片		config.diskCacheFileNameGenerator(new Md5FileNameGenerator());//为了保证图片名称唯一		config.diskCacheSize(50 * 1024 * 1024); // 50 MiB		//内存缓存大小默认是:app可用内存的1/8		config.tasksProcessingOrder(QueueProcessingType.LIFO);		config.writeDebugLogs(); // Remove for release app				//2初始化		ImageLoader.getInstance().init(config.build());	}}

2 设置参数:DisplayImageOptions

public class ImageLoaderOptions {	// 1 listView中图片参数	public static DisplayImageOptions options = new DisplayImageOptions.Builder()			.showImageOnLoading(R.drawable.ic_default)// 加载中显示的图片			.showImageForEmptyUri(R.drawable.ic_default)// 图片url为空显示的图片			.showImageOnFail(R.drawable.ic_default)// 显示失败替代的图片			.cacheInMemory(true)// 在内存中缓存			.cacheOnDisk(true)// 在硬盘中缓存			.considerExifParams(true)// 识别图片的方向信息			// .displayer(new FadeInBitmapDisplayer(3000))//图片渐变效果显示			.displayer(new RoundedBitmapDisplayer(1000)).build();// 图片圆角显示:边角处內圆的半径值。									// 若想圆形显示,则设置>=imageview宽/2,且宽=高。[可直接给1000]                                                                 //  RoundedBitmapDisplayer 当imageview的height= wrap_content高可能显示不出来 // 2 viewPager中参数设置()	public static DisplayImageOptions pagerOptions = new DisplayImageOptions.Builder()			.showImageForEmptyUri(R.drawable.ic_default)			.showImageOnFail(R.drawable.ic_default)			.resetViewBeforeLoading(true)// 加载前清空imageview上的图片			.cacheInMemory(true)			.cacheOnDisk(true)			.imageScaleType(ImageScaleType.EXACTLY)// 图片的缩放类型,对图片进行进一步的压缩,EXACTLY_STRETCHED:拉伸			.bitmapConfig(Config.RGB_565)// 设置图片的色彩模式,是比较节省内存的模式			.displayer(new FadeInBitmapDisplayer(2000))//			.displayer(new RoundedBitmapDisplayer(1000)) //当imageview的height=wrap_content高可能显示不出来。			.build();}

3 调用display()方法

ImageLoader.getInstance().displayImage(Contant.urls[position], holder.imageView, ImageLoaderOptions.options);

源码实例: http://download.csdn.net/detail/ss1168805219/9501847

Android Studio 中如何引用?

dependencies {    ...    compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'    ...}

你可能感兴趣的文章
天气寒冷了程序员脑洞大开,用代码也能造热,这操作也是没谁了!
查看>>
华为员工:内部转岗承诺做java结果变前端开发,我不挑活但……
查看>>
京东码农:淡定认为裁员轮不到我!没想正讨论工作就接到被裁通知
查看>>
某技术总监认为处女座码农要重用,并给出3点原因,你认同么?
查看>>
知乎码农:同事将离职还在积极沟通业务,网友:站好最后一班岗!
查看>>
你今年写过最牛的bug是什么?码农网友:别提了,已成前员工了!
查看>>
码农:一次项目经历改掉了我代码洁癖,由4年小兵升为技术leader
查看>>
毕业生:dubbo源码快看完了,工作是加分项么?网友:只看完不行
查看>>
码农:自评分可以打高一点么?网友:你不打高还期望领导打高?
查看>>
技术组长:有点事需加班,就怕我在大家不好意思走!网友:好领导
查看>>
用一句话证明你是优秀程序员!码农们的这些回答也太大脑洞了吧!
查看>>
程序员晒出了他写的“ai代码”!同行网友:真是个人才!
查看>>
女码农家里给介绍个程序员,每次在微信只聊技术,无奈向网友求助
查看>>
华为码农:放弃工作3年的华为去了小公司,家人都不理解,难受!
查看>>
码农:遇到并发难题请架构师帮忙,他竟说“写代码的事不归他管”
查看>>
码农简历上自我评价写“哈哈”引面试官注意,招进后竟成技术主力!
查看>>
码农:与新来的程序员聊天发现他之前经历有假,该不该举报?
查看>>
作为码农你希望面试官当场指出你错误么?有面试官这样遭到投诉!
查看>>
好多程序员都认为写ppt是很虚的技能,可事实真的是这样么?
查看>>
如果按照代码行数发薪水会怎样?码农:我能刷到公司破产!
查看>>