package com.pan.simplepicture.utils;
import android.content.Context;
import android.net.Uri;
import android.text.TextUtils;
import com.facebook.drawee.backends.pipeline.Fresco;
import com.facebook.drawee.controller.ControllerListener;
import com.facebook.drawee.interfaces.DraweeController;
import com.facebook.drawee.view.SimpleDraweeView;
import com.facebook.imagepipeline.core.ImagePipeline;
import com.facebook.imagepipeline.request.ImageRequest;
import com.facebook.imagepipeline.request.ImageRequestBuilder;
import java.io.File;
/**
* Created by sysadminl on 2015/12/21.
*/
public class FrecsoUtils {
public static void loadImage(String url, SimpleDraweeView imageView, ControllerListener listener) {
if (TextUtils.isEmpty(url)) {
url = "http://";
}
Uri uri = Uri.parse(url);
ImageRequest request = ImageRequestBuilder.newBuilderWithSource(uri)
// . // other setters
.build();
DraweeController controller = Fresco.newDraweeControllerBuilder()
.setImageRequest(request)
.setAutoPlayAnimations(true)
.setControllerListener(listener)
// . // other setters
.build();
imageView.setController(controller);
}
public static void loadImage(String url, SimpleDraweeView imageView) {
if (TextUtils.isEmpty(url)) {
url = "http://";
}
Uri uri = Uri.parse(url);
imageView.setImageURI(uri);
}
/**
* 获取适用于Fresco本地图片资源Url
*/
public static String getFrescoLocalResUrl(Context mContext, int resId) {
return "res://" + mContext.getPackageName() + "/" + resId;
}
/**
* 获取适用于Fresco本地文件图片资源
*/
public static String getFrescoLocalFile(File file) {
return "file://" + file.getPath();
}
public static void clear() {
ImagePipeline mImagePipeline = Fresco.getImagePipeline();
mImagePipeline.clearMemoryCaches();
mImagePipeline.clearDiskCaches();
mImagePipeline.clearCaches();
}
}