图片加载与缓存利器--第三方开源-- Glide

Android Glide使用便利,短短几行简单明晰的代码,即可完成大多数图片从网络(或者本地)加载、显示的功能需求。

使用Android Glide,需要先下载Android Glide的库,Android Glide在github上的项目主页:

https://github.com/bumptech/glide 。

实际的项目使用只需要到Glide的releases页面把jar包下载后导入到本地的libs里面即可直接使用。Glide的releases的页面地址:https://github.com/bumptech/glide/releases ,在此页面找到最新的jar包,下载后放到自己项目的libs中,比如glide 3.6.0库的jar包下载地址:https://github.com/bumptech/glide/releases/download/v3.6.0/glide-3.6.0.jar

接下来是在自己的项目中具体使用,现在给出一个具体的使用例子加以简单说明(通过网络加载图片然后在ImageView中显示出来):

MainActivity.java

 1 import com.bumptech.glide.Glide;
 2
 3 import android.support.v7.app.ActionBarActivity;
 4 import android.view.LayoutInflater;
 5 import android.view.View;
 6 import android.view.ViewGroup;
 7 import android.widget.ArrayAdapter;
 8 import android.widget.ImageView;
 9 import android.widget.ListView;
10 import android.app.Activity;
11 import android.content.Context;
12 import android.os.Bundle;
13
14 public class MainActivity extends ActionBarActivity {
15
16     private Activity mActivity;
17     // 将从此URL加载网络图片。
18     private String img_url = "http://img4.duitang.com/uploads/item/201306/10/20130610100354_3WrWN.gif";
19
20     @Override
21     protected void onCreate(Bundle savedInstanceState) {
22         super.onCreate(savedInstanceState);
23         mActivity = this;
24
25         setContentView(R.layout.activity_main);
26
27         ListView lv = (ListView) findViewById(R.id.listView);
28         lv.setAdapter(new MyAdapter(this, R.layout.item));
29     }
30
31     private class MyAdapter extends ArrayAdapter {
32
33         private int resource;
34
35         public MyAdapter(Context context, int resource) {
36             super(context, resource);
37             this.resource = resource;
38         }
39
40         @Override
41         public View getView(int position, View convertView, ViewGroup parent) {
42             if (convertView == null) {
43                 convertView = LayoutInflater.from(mActivity).inflate(resource,
44                         null);
45             }
46
47             ImageView iv = (ImageView) convertView.findViewById(R.id.imageView);
48
49             Glide.with(mActivity).load(img_url).centerCrop()
50             /*
51              * 缺省的占位图片,一般可以设置成一个加载中的进度GIF图,placeholder显示加载时的图片,crossDade(时间)代表淡入淡出
52              */
53             .placeholder(R.drawable.loading).crossFade().into(iv);
54
55             return convertView;
56         }
57
58         @Override
59         public int getCount() {
60             // 假设加载的数据量很大
61             return 10000;
62         }
63     }
64 }

activity_main.xml:

 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 2     android:layout_width="match_parent"
 3     android:layout_height="match_parent"
 4     android:orientation="vertical" >
 5
 6     <ListView
 7         android:id="@+id/listView"
 8         android:layout_width="match_parent"
 9         android:layout_height="wrap_content" >
10     </ListView>
11
12 </LinearLayout>

item.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     android:orientation="vertical" >
 6
 7     <ImageView
 8         android:id="@+id/imageView"
 9         android:layout_width="wrap_content"
10         android:layout_height="wrap_content" />
11
12 </LinearLayout>
时间: 2024-12-11 16:57:33

图片加载与缓存利器--第三方开源-- Glide的相关文章

Android图片加载与缓存开源框架:Android Glide

<Android图片加载与缓存开源框架:Android Glide> Android Glide是一个开源的图片加载和缓存处理的第三方框架.和Android的Picasso库类似,个人感觉比Android Picasso好用.Android Glide使自身内部已经实现了缓存策略,使得开发者摆脱Android图片加载的琐碎事务,专注逻辑业务的代码.Android Glide使用便利,短短几行简单明晰的代码,即可完成大多数图片从网络(或者本地)加载.显示的功能需求. 使用Android Gl

SDWebImage使用,图片加载和缓存

SDWebImage使用,图片加载和缓存 2012-12-14 12:28:12|  分类: iOS|举报|字号 订阅 下载LOFTER我的照片书  | 清除缓存: [[SDImageCache sharedImageCache] clearDisk]; [[SDImageCache sharedImageCache] clearMemory]; 来自:http://blog.csdn.net/sqc3375177/article/details/7714573 SDWebImage托管在git

SDWebImage 图片加载和缓存

SDWebImage托管在github上.https://github.com/rs/SDWebImage 这个类库提供一个UIImageView类别以支持加载来自网络的远程图片.具有缓存管理.异步下载.同一个URL下载次数控制和优化等特征.使用示范的代码: UITableView使用UIImageView+WebCache类(基本应用,UIImageView的一个category) 前提#import导入UIImageView+WebCache.h文件,然后在tableview的cellFor

Android 平滑图片加载和缓存库 Glide 使用详解

在图片加载库烂大街的今天,选择一个适合自己使用的图片加载库已经成为了每一个Android开发者的必经之路.现在市面上知名的图片加载库有UIL,Picasso,Volley ImageLoader,Fresco以及我们今天的主角Glide.它们各有千秋,不能评定谁一定比谁好,只能说哪一个更适合你. 我的理解 下面我来谈一下个人对这些图片加载库的理解,如有错误,还望指教. Universal Image Loader:一个强大的图片加载库,包含各种各样的配置,最老牌,使用也最广泛. Picasso:

比较强大 优秀的开源框架 :Android图片加载与缓存:Android Glide 的用法

使用Android Glide,需要先下载Android Glide的库,Android Glide在github上的项目主页: https://github.com/bumptech/glide . 实际的项目使用只需要到Glide的releases页面把jar包下载后导入到本地的libs里面即可直接使用.Glide的releases的页面地址:https://github.com/bumptech/glide/releases ,在此页面找到最新的jar包,下载后放到自己项目的libs中,比

Universal-Image-Loader(UIL)图片加载框架使用简单介绍

这个也是最近项目中使用到的第三方图片加载框架,在这里也自己总结一下,简单的介绍一些使用的方式. UIL图片加载框架特点 简介: 项目地址:https://github.com/nostra13/Android-Universal-Image-Loader 异步加载图片或者加载大量图片经常会遇到图片错乱或者OOM等相关问题.UIL图片缓存,目前使用最广泛的图片缓存,支持主流图片缓存的绝大多数特性. 我们看下该图片加载的三级缓存原理 特点: 1.多线程下载图片,图片可以来源于网络,文件系统,项目文件

Android图片加载库的封装实战之路

前言 主流图片加载库的对比 Android-Universal-Image-Loader Picasso Glide Fresco 按需选择图片加载库 如何更好地封装图片加载库 为什么要封装 使用策略模式封装图片加载策略 源码地址 部分参考链接 前言 图片加载是Android开发中最最基础的功能,为了降低开发周期和难度,我们经常会选用一些图片加载的开源库 选取第三方SDK需要谨慎 二次封装 主流图片加载库的对比 共同点 使用简单:一句话实现图片的获取和显示 可配置性高:可配置各种解码.缓存.下载

常用图片加载框架

我们在项目中使用的是Picasso.其实现在的主流图片加载框架除了Picasso还有ImageLoader,Glide,以及Fresco.ImageLoader是比较老的框架了,稳定, 加载速度适中, 缺点在于不支持GIF图片加载, 使用稍微繁琐, 并且缓存机制没有和http的缓存很好的结合, 完全是自己的一套缓存机制.Glide是谷歌的一位工程师开发的,它可以说是Picasso的升级版, 有Picasso的优点, 并且支持GIF图片加载显示, 图片缓存也会自动缩放, 默认使用RGB_565格式

xcode UIImageView创建、图片加载、 音频文件播放、 延迟调用

代码创建 /** 创建UIImageView */ UIImageView * imageView=[[UIImageView alloc]init]; /** 设置尺寸位置 */ imageView.frame=(CGRect){{50,50},{230,230}}; /** 创建图片 */ UIImage * image=[[UIImage alloc]init]; /** 获取图片 */ image=[UIImage imageNamed:@"图片名称"]; /** 把图片给容器