Android 图片平滑滚动组件 Glide

81497712 2014-10-15

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

Android 图片平滑滚动组件 Glide

Glide最核心的功能就是提高滚动图片列表的性能,并且Glide还能满足对远程图片的读取、改变尺寸以及展示的性能要求。

Glide使用方法

最简单的示例代码如下:

// For a simple view: 


@Override 


public 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: 


@Override 


public 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组件可以帮助你在图片视频方面优化应用程序。

软件首页

软件文档

软件下载

相关推荐