网站首页 / 生活 / 正文

android图片加载框架(android课程设计小项目)

时间:2022-04-12 22:55:06 浏览:2373次 作者:用户投稿 【我要投诉/侵权/举报 删除信息】

即日解说的是谷歌引荐的图片框架glide的精细运用本领

开始翻开AS工程-Android开拓情况

增添依附

implementation 'com.github.bumptech.glide:glide:4.5.0'annotationProcessor 'com.github.bumptech.glide:compiler:4.5.0'增添搜集权力

<uses-permission android:name="android.permission.INTERNET" />图片的运用

1、加载图片到imageView

Glide.with(Context context).load(Strint url).into(ImageView imageView);2、百般情势的图片加载到ImageView

// 加载当地图片File file = new File(getExternalCacheDir() + "/image.jpg");Glide.with(this).load(file).into(imageView);// 加载运用资源int resource = R.drawable.image;Glide.with(this).load(resource).into(imageView);// 加载二进制流byte&#***;] image = getImageBytes();Glide.with(this).load(image).into(imageView);// 加载Uri东西Uri imageUri = getImageUri();Glide.with(this).load(imageUri).into(imageView);3、加载带有占位图

Glide.with(this).load(url).placeholder(R.drawable.loading).into(imageView);占位图手段为在手段图片还未加载出来的功夫,提早展现给用户的一张图片;

4、加载波折 安置占位符

Glide.with(this).load(url).placeholder(R.drawable.loading).error(R.drawable.error).diskCacheStrategy(DiskCacheStrategy.NONE)//封闭Glide的硬盘缓存体制.into(imageView);//DiskCacheStrategy.NONE: 表白不缓存任何实质。//DiskCacheStrategy.SOURCE: 表白只缓存原始图片。//DiskCacheStrategy.RESULT: 表白只缓存变换事后的图片(默许选项)。//DiskCacheStrategy.ALL : 表白既缓存原始图片,也缓存变换事后的图片。5、加载指定方法的图片–指定于停止图片

Glide.with(this).load(url).asBitmap()//只加载静态图片,即使是git图片则只加载第一帧。.placeholder(R.drawable.loading).error(R.drawable.error).diskCacheStrategy(DiskCacheStrategy.NONE).into(imageView);6、加载动静图片

Glide.with(this).load(url).asGif()//加载动静图片,若现有图片为非gif图片,则径直加载缺点占位图。.placeholder(R.drawable.loading).error(R.drawable.error).diskCacheStrategy(DiskCacheStrategy.NONE).into(imageView);7、加载指定巨细的图片

Glide.with(this).load(url).placeholder(R.drawable.loading).error(R.drawable.error).diskCacheStrategy(DiskCacheStrategy.NONE).override(100, 100)//指定图片巨细.into(imageView)8、封闭框架的外存缓存体制

Glide.with(this).load(url).skipMemoryCache(true) //传入参数为false时,则封闭外存缓存。.into(imageView);9、封闭硬盘的缓存

Glide.with(this).load(url).diskCacheStrategy(DiskCacheStrategy.NONE) //封闭硬盘缓存操纵.into(imageView);10、运用Glide将图片加载到各别控件或加载成各别运用办法

//1、经过本人结构 target 不妨获得到图片范例SimpleTarget<GlideDrawable> simpleTarget = new SimpleTarget<GlideDrawable>() {@Overridepublic void onResourceReady(GlideDrawable resource, GlideAnimation glideAnimation) {imageView.setImageDrawable(resource);}};//2、将图片范例记录到指定的imageview上,也不妨做其余的工作public void loadImage(View view) {String url = "/zb_users/upload/images/2022/04/202204122255061888.jpg 诉求预加载图片,Glide 实行预加载

//a、预加载代码Glide.with(this) .load(url) .diskCacheStrategy(DiskCacheStrategy.SOURCE) .preload(); //preload() 有两种重载 // 1、带有参数的重载,参数效率是树立预加载的图片巨细;//2、不带参数的表白加载的图片为原始尺寸; //b、运用预加载的图片Glide.with(this) .load(url) .diskCacheStrategy(DiskCacheStrategy.SOURCE) .into(imageView);12、监听 Glide 加载的状况

public void loadImage(View view) {String url = "/zb_users/upload/images/2022/04/202204122255071889.jpg RequestListener<String, GlideDrawable>() {@Overridepublic boolean onException(Exception e, String model, Target<GlideDrawable> target,boolean isFirstResource) {return false;}@Overridepublic boolean onResourceReady(GlideDrawable resource, String model,Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {return false;}}).into(imageView);}

版权声明:
本文内容由互联网用户自发贡献,该文观点仅代表作者本人,因此内容不代表本站观点、本站不对文章中的任何观点负责,内容版权归原作者所有、内容只用于提供信息阅读,无任何商业用途。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站(文章、内容、图片、音频、视频)有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至353049283@qq.com举报,一经查实,本站将立刻删除、维护您的正当权益。