网络加载图片Fresco、ImageLoader、Picasso的简单用法

Fresco

加入依赖 记得配置App初始化

//fresco 图片依赖

implementation 'com.facebook.fresco:fresco:1.11.0'

//fresco GIF依赖

 implementation 'com.facebook.fresco:animated-gif:1.11.0'

配置App全局设置

public class App extends Application {
@Override
public void onCreate() {
  super.onCreate();
 ===============无缓存========
//        //调用Fresco类 里的初始化方法 传上下文this  然后在清单文件添加
//        Fresco.initialize(this);
===============有缓存========
  // 高级初始化   
Fresco.initialize(this, ImagePipelineConfig.newBuilder(App.this)
        .setMainDiskCacheConfig(
                DiskCacheConfig.newBuilder(this)
                        .setBaseDirectoryPath(new File("SD卡路径")) // 注意Android运行时权限。
                        .build()
        )
        .build()
);
}
}

配置清单文件

android:name=".App"

在布局中加入控件

<com.facebook.drawee.view.SimpleDraweeView
	android:id="@+id/msimple"
    android:layout_width="100dp"
	android:layout_height="100dp"
    fresco:roundAsCircle="true"/>

开始使用

//找到控件
mSimple =(SimpleDraweeView) findViewById(R.id.msimple );

//1、直接加载
Uri uri = Uri.parse("图片链接");
//          simple.setImageURI(uri);
//  加载本地资源需要 加载本地路径
//  例: String urlgif1="res:///"+R.drawable.aaa;

// 2、加载gif
AbstractDraweeController controller = Fresco.newDraweeControllerBuilder()
        //图片地址
        .setUri(urlgif1)
        //播放gif 图片
        .setAutoPlayAnimations(true)
        //点击重新加载时 可以重新加载4 次
        .setTapToRetryEnabled(true)
        .build();
simple.setController(controller);

高斯模糊的方法

//高斯模糊
showUrlBlur(simple,url,100,10);
/**
* 以高斯模糊显示。
 * @param draweeView View。
* @param url        url.
* @param iterations 迭代次数,越大越模糊。
* @param blurRadius 模糊图半径,必须大于0,越大越模糊。
*/
public static void showUrlBlur(SimpleDraweeView draweeView, String url, int iterations, int blurRadius) {
try {
    Uri uri = Uri.parse(url);
    ImageRequest request = ImageRequestBuilder.newBuilderWithSource(uri)
            .setPostprocessor(new IterativeBoxBlurPostProcessor(iterations, blurRadius))
            .build();
    AbstractDraweeController controller = Fresco.newDraweeControllerBuilder()
            .setOldController(draweeView.getController())
            .setImageRequest(request)
            .build();
    draweeView.setController(controller);
} catch (Exception e) {
    e.printStackTrace();
   }
}

ImageLoader

依赖

implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'	

写个图片控件

<ImageView
 android:layout_width="150dp"
 android:layout_height="wrap_content"
 android:id="@+id/mimage"
 android:src="@mipmap/ic_launcher"/>

配置App

public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
ImageLoaderConfiguration aDefault = ImageLoaderConfiguration.createDefault(this);
ImageLoader.getInstance().init(aDefault);
	}
}

配置清单文件

android:name=".App"

找到控件并赋值

ImageLoader.getInstance().displayImage(url,view);

Picasso

加入依赖

implementation 'com.squareup.picasso:picasso:2.3.2'

找到控件直接赋值

Picasso.with(context).load(url).fit().into(view);
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值