Welcome 微信登录

首页 / 移动开发 / Android / Android组件Glide实现图片平滑滚动效果

Glide是一款基于Android的图片加载和图片缓存组件,它可以最大性能地在Android设备上读取、解码、显示图片和视频。Glide可以将远程的图片、视频、动画图片等缓存在设备本地,便于提高用户浏览图片的流畅体验。


Glide最核心的功能就是提高滚动图片列表的性能,并且Glide还能满足对远程图片的读取、改变尺寸以及展示的性能要求。
Glide使用方法
最简单的示例代码如下:

// For a simple view:@Overridepublic void onCreate(Bundle savedInstanceState) {...ImageView imageView = (ImageView) findViewById(R.id.my_image_view);Glide.with(this).load("http://goo.gl/h8qOq7").into(imageView);}// For a list:@Overridepublic View getView(int position, View recycled, ViewGroup container) {final ImageView myImageView;if (recycled == null) {myImageView = (ImageView) inflater.inflate(R.layout.my_image_view,container, false);} else {myImageView = (ImageView) recycled;}String url = myUrls.get(position);Glide.with(myFragment).load(url).centerCrop().placeholder(R.drawable.loading_spinner).crossFade().into(myImageView);return myImageView;}
在Glide上应用Volley通信框架
Volley是Glide的可选项,可以支持http/https来读取图片。
用Gradle:
dependencies {compile "com.github.bumptech.glide:volley-integration:1.0.+"compile "com.mcxiaoke.volley:library:1.0.+"}
或者用Maven:
<dependency><groupId>com.github.bumptech.glide</groupId><artifactId>volley-integration</artifactId><version>1.0.1</version><type>jar</type></dependency><dependency><groupId>com.mcxiaoke.volley</groupId><artifactId>library</artifactId><version>1.0.5</version><type>aar</type></dependency>
然后在Activity或者Application中注册 Volley的加载项即可:
public void onCreate() { Glide.get(this).register(GlideUrl.class, InputStream.class,new VolleyUrlLoader.Factory(yourRequestQueue)); ...}
这样所有的请求就会通过Volley了。
在Glide中应用OKHttp通信框架
除了Volley,Glide中还可以使用OkHttp通信框架,OkHttp同样支持http/https来读取图片。
用Gradle:
dependencies {compile "com.github.bumptech.glide:okhttp-integration:1.0.+"compile "com.squareup.okhttp:okhttp:2.0.+"}
或者用Maven:
<dependency><groupId>com.github.bumptech.glide</groupId><artifactId>okhttp-integration</artifactId><version>1.0.1</version><type>jar</type></dependency><dependency><groupId>com.squareup.okhttp</groupId><artifactId>okhttp</artifactId><version>2.0.0</version><type>jar</type></dependency>
然后在Activity或者Application中注册 OkHttp的加载项即可:
public void onCreate() { Glide.get(this).register(GlideUrl.class, InputStream.class,new OkHttpUrlLoader.Factory(yourOkHttpClient)); ...}
总结
如果你的Android应用中涉及到远程图片的处理,那么Glide组件可以帮助你在图片视频方面优化应用程序。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。