資訊_圖片緩存,圓角

注意:一定在清單文件內註冊

package com.example.demo100.app;

import android.app.Application;
import android.os.Environment;

import com.example.demo100.R;
import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiskCache;
import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
import com.nostra13.universalimageloader.core.display.RoundedBitmapDisplayer;

import java.io.File;

/**
 * @Auther: 努力
 * @Date: 2019/1/17 20:32:${盧文傑}
 * @Description:
 */
public class App extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        String path = Environment.getExternalStorageDirectory().getPath() + "/RiKao13";
        File file = new File(path);

        ImageLoaderConfiguration loader = new ImageLoaderConfiguration.Builder(this)
                .memoryCacheExtraOptions(200, 200)//配置內存緩存圖片的尺寸
                .memoryCacheSize(2 * 1024 * 1024)//配置內存緩存的大小
                .threadPoolSize(3)//配置加載圖片的線程數
                .threadPriority(1000)//配置線程的優先級
                .diskCache(new UnlimitedDiskCache(file))//UnlimitedDiskCache 限制這個圖片的緩存路徑
                .diskCacheFileCount(50)//配置sdcard緩存文件的數量
                .diskCacheFileNameGenerator(new Md5FileNameGenerator())//MD5這種方式生成緩存文件的名字
                .diskCacheSize(50 * 1024 * 1024)//在sdcard緩存50MB
                .build();

        //獲得實例
        ImageLoader imageLoader = ImageLoader.getInstance();

        ImageLoader.getInstance().init(loader);

    }

    public static DisplayImageOptions getDisplayImageOptions() {
        DisplayImageOptions displayImageOptions = new DisplayImageOptions.Builder()
                .showImageOnLoading(R.mipmap.zhan)
                .showImageForEmptyUri(R.mipmap.zhaobudao)
                .showImageOnFail(R.mipmap.shibai)
                //可在實現中對 bitmap 做一些額外處理,比如加圓角、動畫效果。
                .displayer(new SimpleBitmapDisplayer())
                // bitmap的質量,默認爲ARGB_8888
                .bitmapConfig(Bitmap.Config.ARGB_8888)
                .build();
        return displayImageOptions;
    }

    public static DisplayImageOptions getDisplayImageOptions2() {
        DisplayImageOptions displayImageOptions = new DisplayImageOptions.Builder()
                .showImageOnLoading(R.mipmap.zhan)
                .showImageForEmptyUri(R.mipmap.zhaobudao)
                .showImageOnFail(R.mipmap.shibai)
                .displayer(new RoundedBitmapDisplayer(360))
                .build();
        return displayImageOptions;
    }

}

注意:調用app類內的方法,實現效果
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章