Skip to content

组合图异步加载缓存框架 已经实现微信群头像 qq群头像 支持添加自定义实现

Notifications You must be signed in to change notification settings

wywangyunying/MutiImgLoader

 
 

Repository files navigation

mutiImgLoader是一个实现了DiskLruCache磁盘缓存,Lru内存缓存的图片加载框架。目前内置了微信群头像,QQ群头像的合成加载。并支持自定义扩展其他合成图像方案。

博客介绍

mutiImgLoader使用非常简单。

添加依赖

compile 'com.abbott.mutiimgloader:mutiimgloader:1.0.1'

1、单图加载

JImageLoader imageLoader = new JImageLoader(Context); //初始化
imageLoader.configDefaultPic(R.drawable.ic_launcher_round);//设置默认加载图

//调用图像加载
public void displayImage(final String url, final ImageView imageView, final int dstWidth, final int dstHeight)

2、组合图加载

public void displayImages(
    final List<String> urls,
    final ImageView imageView, 
    final MergeCallBack mergeCallBack
)

3、实现自定义的图像合并方案

public interface MergeCallBack {
    //图像合并
    Bitmap merge(List<Bitmap> bitmapArray, Context context, ImageView imageView);
    //用于链接标志。切换不同的加载方式,防止缓存碰撞
    String getMark();
}

ps:由于merge图像的合成是十分消耗性能的,所以框架自动实现了合并后的图片文件进行磁盘缓存和内存缓存。在第二次加载的时候,可以流畅的显示出来。

内部实现原理图

image

演示图如下

image

微信加载(动态图加载比较慢)

image image

QQ头像加载(动态图加载比较慢)

image image

About

组合图异步加载缓存框架 已经实现微信群头像 qq群头像 支持添加自定义实现

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%