imageloader

来源:互联网 发布:淘宝商品怎么分类 编辑:程序博客网 时间:2024/06/05 22:38
package animtest.com.example.e531.imageloader_demo2;


import android.graphics.Bitmap;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;


import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;


public class MainActivity extends AppCompatActivity {


    String picUrl="http://img-arch.pconline.com.cn/images/piclib/201306/18/batch/1/179626/1371518448073jl2qblsrem.jpg";


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




        //第二步:进行图片显示设置
        DisplayImageOptions options=new DisplayImageOptions.Builder()
                .cacheInMemory(true)//进行内存缓存
                .cacheOnDisk(true)//进行sd卡缓存
                .showImageOnLoading(R.drawable.ic_stub) // 设置正在下载中的图片
                .showImageForEmptyUri(R.drawable.ic_empty) //没有请求地址时
                .showImageOnFail(R.drawable.ic_error)//下载错误时
                .bitmapConfig(Bitmap.Config.RGB_565)//设置图片质量
                .build();




        //第三步:进行加载显示
        ImageLoader.getInstance().displayImage(picUrl,imageView,options);

    }

}




package animtest.com.example.e531.imageloader_demo2;


import android.app.Application;


import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiscCache;
import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;
import com.nostra13.universalimageloader.cache.memory.impl.LruMemoryCache;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;


import java.io.File;


/**
 * Created by e531 on 2017/10/11.
 */
public class MyApplication  extends Application{


    //程序真正的入口函数
    @Override
    public void onCreate() {
        super.onCreate();


        //storage/sdcard/data/<package>/cache
        //sd/mycache/
        File cacheDir=this.getExternalCacheDir();//自定义缓存路径


        ImageLoaderConfiguration configuration=new ImageLoaderConfiguration.Builder(this)
                .memoryCache(new LruMemoryCache(2 * 1024 * 1024))//设置内存缓存区大小
                .memoryCacheSize(2 * 1024 * 1024)//设置缓存区大小
                .memoryCacheExtraOptions(320,320)//缓存图片最大的宽度与高度 px
                .diskCacheSize(50*1024*1024)//设置sd卡缓存的空间大小
                .diskCacheFileNameGenerator(new Md5FileNameGenerator())//sd卡缓存图片的命名 使用md5加密方式
                .diskCache(new UnlimitedDiscCache(cacheDir))//自定义sd卡的缓存路径
                .diskCacheFileCount(100)//缓存文件的最大数量
                .writeDebugLogs()//写入日志
                .threadPoolSize(3)//线程池
                .build();
        //对imageLoader进行初使化


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

原创粉丝点击