比较强大 优秀的开源框架 :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中,比如glide 3.6.0库的jar包下载地址:https://github.com/bumptech/glide/releases/download/v3.6.0/glide-3.6.0.jar

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

将下载下来的jar文件复制到这里:

 1 package com.example.testglide;
 2
 3 import com.bumptech.glide.Glide;
 4
 5 import android.app.Activity;
 6 import android.content.Context;
 7 import android.os.Bundle;
 8 import android.view.LayoutInflater;
 9 import android.view.View;
10 import android.view.ViewGroup;
11 import android.widget.ArrayAdapter;
12 import android.widget.ImageView;
13 import android.widget.ListView;
14 import android.widget.TextView;
15
16 public class MainActivity extends Activity {
17     // 网络图片地址
18     private String Url = "http://img3.imgtn.bdimg.com/it/u=1183223528,3058066243&fm=21&gp=0.jpg";
19     private MyAdapter mMyAdapter;
20
21     @Override
22     protected void onCreate(Bundle savedInstanceState) {
23         super.onCreate(savedInstanceState);
24         setContentView(R.layout.activity_main);
25
26         ListView lv = (ListView) findViewById(R.id.lv);
27         mMyAdapter = new MyAdapter(this, -1);
28
29         lv.setAdapter(mMyAdapter);
30
31     }
32
33     private class MyAdapter extends ArrayAdapter {
34         private Context context;
35         LayoutInflater flater;
36
37         public MyAdapter(Context context, int resource) {
38             super(context, resource);
39             this.context = context;
40             flater = LayoutInflater.from(context);
41         }
42
43         @Override
44         public int getCount() {
45             return 100;
46         }
47
48         @Override
49         public View getView(int position, View convertView, ViewGroup parent) {
50             if (convertView == null)
51                 convertView = flater.inflate(R.layout.list, null);
52
53             ImageView iv = (ImageView) convertView.findViewById(R.id.iv);
54
55             TextView tv = (TextView) convertView.findViewById(R.id.tv);
56
57             tv.setText(position + "");
58             // placeholder(R.drawable.jinchengtu)这个是加载本地图片 实现加载网络图片过渡用 优化用户体验
59             // crossFade(1000) 设置显示图片淡出时间
60
61             Glide.with(context).load(Url).placeholder(R.drawable.jinchengtu).crossFade(1000).into(iv);
62
63             return convertView;
64         }
65
66     }
67
68 }

xml文件:

 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 2     xmlns:tools="http://schemas.android.com/tools"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     tools:context="com.example.testglide.MainActivity" >
 6
 7     <ListView
 8         android:id="@+id/lv"
 9         android:layout_width="wrap_content"
10         android:layout_height="wrap_content"
11         android:layout_centerInParent="true" />
12
13 </RelativeLayout>
 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/iv"
 9         android:layout_width="match_parent"
10         android:layout_height="wrap_content" />
11
12     <TextView
13         android:id="@+id/tv"
14         android:layout_width="match_parent"
15         android:layout_height="wrap_content"
16         android:background="#00ff00" />
17
18 </LinearLayout>

运行效果图:

时间: 2024-11-13 05:01:53

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

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

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

Android 开源框架 ( 九 ) 图片加载框架---ImageLoader

一.引言 Android的每一个App通常只拥有有限的系统资源,Android设备为每个App分配的内存大小是也是有上限的,并且,针对不同的设备配置所分配的内存大小也是不一样的,最小为16MB.图片会占用大量的内存,尤其是那些超清照片.所以图片加载时做容易造成安卓内存溢出的原因,而要解决这些问题还需要很多相关知识: 1.多线程下载,线程管理. 2.多级缓存架构设计和策略,内存缓存,磁盘缓存,缓存有效性处理. 3.图片压缩,特效处理,动画处理. 4.复杂网络情况下下载图片策略,例如弱网络等. 5.

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

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

Android图片加载框架最全解析(二),从源码的角度理解Glide的执行流程

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/53939176 本文同步发表于我的微信公众号,扫一扫文章底部的二维码或在微信搜索 郭霖 即可关注,每天都有文章更新. 在本系列的上一篇文章中,我们学习了Glide的基本用法,体验了这个图片加载框架的强大功能,以及它非常简便的API.还没有看过上一篇文章的朋友,建议先去阅读 Android图片加载框架最全解析(一),Glide的基本用法 . 在多数情况下,我们想要在界面上加载并展示一

一起写一个Android图片加载框架

本文会从内部原理到具体实现来详细介绍如何开发一个简洁而实用的Android图片加载缓存框架,并在内存占用与加载图片所需时间这两个方面与主流图片加载框架之一Universal Image Loader做出比较,来帮助我们量化这个框架的性能.通过开发这个框架,我们可以进一步深入了解Android中的Bitmap操作.LruCache.LruDiskCache,让我们以后与Bitmap打交道能够更加得心应手.若对Bitmap的大小计算及inSampleSize计算还不太熟悉,请参考这里:高效加载Bit

Android图片加载神器之Fresco,基于各种使用场景的讲解

转载请标明出处:http://blog.csdn.net/android_ls/article/details/53137867 Fresco是Facebook开源Android平台上一个强大的图片加载库,也是迄今为止Android平台上最强大的图片加载库. 优点:相对于其他开源的第三方图片加载库,Fresco拥有更好的内存管理和强大的功能,基本上能满足所有的日常使用场景. 缺点:整体比较大,不过目前的版本已做了拆分,你只需要导入你使用到的功能相关的库.从代码层面来说侵入性太强,体现在要使用它需

Android图片加载库的理解

前言 这是“基础自测”系列的第三篇文章,以Android开发需要熟悉的20个技术点为切入点,本篇重点讲讲Android中的ImageLoader这个库的一些理解,在Android上最让人头疼是从网络中获取图片,显示,回收,任何一个环节有问题都可能直接OOM,当需要加载大量的图片的时候,每当快速滑,有时候会很卡,甚至会因为内存溢出而崩溃.这里讲解的库是:Universal_Image_Loader. 内容目录 ImageLoader设计原理 ImageLoader流程图 ImageLoader的使

FaceBook推出的Android图片加载库-Fresco

FaceBook推出的Android图片加载库-Fresco 原文链接:Introducing Fresco: A new image library for Android 译者 :  ZhaoKaiQiang 校对者: Chaossss 校对者: bboyfeiyu 校对者: BillionWang 状态 :  完成 在Android设备上面,快速高效的显示图片是极为重要的.过去的几年里,我们在如何高效的存储图像这方面遇到了很多问题.图片太大,但是手机的内存却很小.每一个像素的R.G.B和a

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