Fresco是一个强大的图片加载框架,这里只是简单的说一下配置的过程
Fresco的环境搭建
1.在项目的Build中添加依赖 添加到dependencies{}中
//Fresco的基础依赖 无论使用哪个模块的功能,都必须要添加
implementation 'com.facebook.fresco:fresco:1.11.0'
//下面的依赖根据需求,用到哪个模块,就导入对应的依赖即可.
// 仅支持 WebP 静态图,需要添加
implementation 'com.facebook.fresco:webpsupport:0.14.1'
// 支持 GIF 动图,需要添加
implementation 'com.facebook.fresco:animated-gif:0.14.1'
// 支持 WebP 静态图及 WebP 动图,需要添加
implementation 'com.facebook.fresco:animated-webp:0.14.1'
implementation 'com.facebook.fresco:webpsupport:0.14.1'
// 在 API < 14 上的机器支持 WebP 时,需要添加
implementation 'com.facebook.fresco:animated-base-support:0.14.1'
2. 在application中初始化Fresco(记得在清单文件里配置application)
public class MyAPP extends Application {
@Override
public void onCreate() {
super.onCreate();
//初始化化,Fresco
Fresco.initialize(this);
}
}
3.在清单文件中 配置网络权限
<uses-permission android:name="android.permission.INTERNET"/>
4.在xml布局文件中,加入命名空间
xmlns:fresco="http://schemas.android.com/apk/res-auto"
5.在xml中引入SimpleDraweeView控件
<!--注意命名空间-->
<!--fresco:placeholderImage="@mipmap/ic_launcher"占位图片-->
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/item_image"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_margin="5dp"
fresco:placeholderImage="@mipmap/ic_launcher" />
以上步骤就是Fresco的基本配置了,接下来,让我们看看在代码中如何使用它加载图片
/1.在java中加载,显示图片
//加载网络图片的网址
Uri uri = Uri.parse("http://assets.kgc.cn/upload/openteacher/20160831/1472636067718985.jpg");
//初始化控件
SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.my_image_view);
//加载图片
draweeView.setImageURI(uri);
//2带进度条加载图片
/所要加载图片的网址
Uri uri = Uri.parse("http://assets.kgc.cn/upload/openteacher/20160831/1472636067718985.jpg");
//初始化控件
SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.my_image_view);
//创建Builder对象,一般创建出参数对象
GenericDraweeHierarchyBuilder builder = new GenericDraweeHierarchyBuilder(getResources());
//创建参数对象,设置其样式为进度条
GenericDraweeHierarchy hierarchy = builder.setProgressBarImage(new ProgressBarDrawable()).build();
//将参数对象设置给图片控件
draweeView.setHierarchy(hierarchy);
//控件加载图片,参数:网络图片的网址.
draweeView.setImageURI(uri);
就到这里吧!没有写到的有时间在完善!