【光速使用开源框架系列】图片加载框架ImageLoader

【关于本系列】

最近看了不少开源框架,网上的资料也非常多,但是我认为了解一个框架最好的方法就是实际使用。本系列博文就是带领大家快速的上手一些常用的开源框架,体会到其作用。

由于作者水平有限,本系列只会描述如何快速的使用框架的基本功能,更多的详细设置大家可以在这些项目的页面上找到。

【介绍】:

ImageLoader作为一款开源的异步图片加载框架,在Android开发中经常被使用到,该控件可以加载和显示图片。并且对其进行缓存,提供了很多方便的选项帮助开发者们快速达到开发需求。

【GitHub页面】:

https://github.com/nostra13/Android-Universal-Image-Loader

【使用步骤】

1.从项目的页面上下载zip包或者clone到本地,找到jar包,导入自己的项目,关于如何导入,根据使用IDE的不同也略有差别,大家可以自行搜索

2.建立一个Activity

3.新建一个ImageLoaderConfiguration对象,用于ImageLoader的初始化,可以直接调用默认方法创建,如下

4.初始化ImageLoader对象,由于使用的是单例模式,所以初始化一次即可

5.创建一个DisplayImageOptions对象,该对象可以设置一些图片显示的选项,如是否缓存到本地,缓存到内存,显示失败时显示哪些内容等

6.调用ImageLoader的displayImage(String uri, ImageView imageView, DisplayImageOptions options)方法进行显示。

【代码】

public class MainActivity extends Activity {
    DisplayImageOptions options;//option类可以做一些设置

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main); 
        ImageView imageView = (ImageView)findViewById(R.id.iv_1);//实例化imageview
        String imageUrl = "https://www.baidu.com/img/bdlogo.png";//设置图片URL
        ImageLoaderConfiguration config = ImageLoaderConfiguration.createDefault(this);//初始化config类,用于初始化
        ImageLoader.getInstance().init(config);//初始化Loader
        options = new DisplayImageOptions.Builder()
              .cacheInMemory(true)//是否内存缓存
                .cacheOnDisk(true)//是否缓存到磁盘
                .bitmapConfig(Bitmap.Config.RGB_565)//配置图片以如何的编码显示
                .showImageOnFail(R.drawable.pic2)//设置本地图片资源,用于无法加载时显示
                .build();
        ImageLoader.getInstance().displayImage(imageUrl,imageView, options);//调用displayimage函数,显示
 }
}

【效果图】

可以看到,我们的图片已经成功被加载了

【一个更复杂的例子,结合ListView或者ViewPager】

请参考此处:

http://www.cnblogs.com/tianzhijiexian/p/4034386.html

原文地址:https://www.cnblogs.com/u3shadow/p/4634217.html