ImageLoad 图片框架 缓存到SD卡 加载圆形图片

创建一个自定义类,继承Application,重写onCreat方法,加载完一下的方法以后必须去
AndroidManifest.xml 中的<application> 里面添加 name (
android:name=".MyApplication"
)属性,引用自定义的MyApplication 类,还需要申请INTENET和SDcard的读和写的权限

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        //‘创建文件夹’
        File file = new File(Environment.getExternalStorageDirectory()
        .getPath() + "/pictrues0714");
        
        ImageLoaderConfiguration build = new ImageLoaderConfiguration.Builder(this)
                .memoryCacheExtraOptions(100, 100)//设置图片压缩的大小尺寸
                .memoryCacheSize(2 * 1024 * 1024)//设置图片的缓冲大小
                .threadPoolSize(3)//设置运行的线程个数
                .threadPriority(1000)//设置线程的优先级
//                .diskCacheFileCount(100)//设置加载的图片个数
                .diskCacheSize(50 * 1024 * 1024)//设置加载图片的总大小,他和加载图片个数可以二选其一
                .diskCache(new UnlimitedDiskCache(file))//设置图片缓冲的路劲
                .diskCacheFileNameGenerator(new Md5FileNameGenerator())//设置图片缓冲的名字,防止名字相同
                .build();//最后把它创建出来

        ImageLoader.getInstance().init(build);
    }

}
然后在MainActivity中设置如下

public class MainActivity extends AppCompatActivity {

    private ImageView img;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        img = (ImageView) findViewById(R.id.img);

        String path = "http://cdn.duitang.com/uploads/blog/201308/18/20130818150526_Ru2Bk.thumb.600_0.png";

        DisplayImageOptions options = new DisplayImageOptions.Builder()
                .cacheInMemory(true)//设置图片是否支持缓冲
                .cacheOnDisk(true)//设置sdcard是否支持缓冲
                .displayer(new CircleBitmapDisplayer())//设置圆形图片
//              .displayer(new RoundedBitmapDisplayer(20))//设置图片圆角
		//加载这三个showImage的方法可用避免ListView加载的时候图片错位问题
.showImageForEmptyUri(R.mipmap.ic_empty)//加载图片为空的时候显示这个图片 
.showImageOnFail(R.mipmap.ic_error)//请求失败的时候显示这个图片 
.showImageOnLoading(R.mipmap.loading)//正在加载的时候显示的图片
 .build(); 
 ImageLoader.getInstance().displayImage(path, img, options);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值