Fresco图片加载库的使用(SimpleDraweeView的简单使用 )

一、简介

Fresco 的出现,似乎将 Android 的图片加载做到了极致

Fresco 中文说明:http://www.fresco-cn.org/

Fresco 项目GitHub地址:https://github.com/facebook/fresco

Fresco 的Drawees 负责图片的呈现,Image Pipeline 负责图片的获取和管理。

Drawees功能: 

设置要加载的图片
设置占位图
设置加载失败时的占位图
点击重新加载
显示一个进度条
设置背景
叠加图
按压状态下的叠加图
缩放
圆角和圆圈
使用ControllerBuilder
渐进式JPEG图
动画支持(GIF 和 WebP 格式的动画)
多图请求及图片复用
监听下载事件
缩放和旋转图片
修改图片
图片请求(Image Requests)
自定义View

Image Pipeline功能:

配置Image Pipeline
缓存
直接使用Image Pipeline
数据源和数据订阅者
可关闭的引用
Webp支持

二、使用Fresco

1.引入Fresco,编辑 build.gradle 文件:

 
 
compile 'com.facebook.fresco:fresco:1.3.0'

2.在 AndroidManifest.xml 中声明了网络请求的权限

<uses-permission android:name="android.permission.INTERNET" />

3.始化Fresco类

// 在加载图片之前,你必须初始化Fresco类
Fresco.initialize(this);

4.在xml布局文件中, 加入命名空间

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:fresco="http://schemas.android.com/apk/res-auto"
    android:layout_height="match_parent"
    android:layout_width="match_parent">

5.加入SimpleDraweeView

<com.facebook.drawee.view.SimpleDraweeView
    android:id="@+id/my_image_view"
    android:layout_width="130dp"
    android:layout_height="130dp"
    fresco:placeholderImage="@drawable/my_drawable"
  />

6.开始加载图片

Uri uri = Uri.parse("https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=3103457797,1011040581&fm=26&gp=0.jpg");
SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.my_image_view);
draweeView.setImageURI(uri);

三、几种常用的效果展示

相关参数说明:

<com.facebook.drawee.view.SimpleDraweeView
  android:id="@+id/my_image_view"
  android:layout_width="20dp"
  android:layout_height="20dp"
  fresco:fadeDuration="300"-----淡入淡出动画持续时间
  fresco:actualImageScaleType="focusCrop"-----设置缩放类型
  fresco:placeholderImage="@color/wait_color"-----占位图
  fresco:placeholderImageScaleType="fitCenter"-----占位图缩放类型
  fresco:failureImage="@drawable/error"-----加载失败图
  fresco:failureImageScaleType="centerInside"-----加载失败图缩放类型
  fresco:retryImage="@drawable/retrying"-----点击重新加载图
  fresco:retryImageScaleType="centerCrop"-----重新加载图缩放类型
  fresco:progressBarImage="@drawable/progress_bar"-----进度条图
  fresco:progressBarImageScaleType="centerInside"-----进度条图缩放类型
  fresco:progressBarAutoRotateInterval="1000"-----进度条图片自动旋转时间间隔
  fresco:backgroundImage="@color/blue"-----背景图
  fresco:overlayImage="@drawable/watermark"-----叠加图
  fresco:pressedStateOverlayImage="@color/red"-----按压状态时显示的叠加图
  fresco:roundAsCircle="false"-----是否为圆形
  fresco:roundedCornerRadius="1dp"-----圆角半径
  fresco:roundTopLeft="true"-----左上角为圆角
  fresco:roundTopRight="false"-----右上角不为圆角
  fresco:roundBottomLeft="false"-----左下角不为圆角
  fresco:roundBottomRight="true"-----右下角为圆角
  fresco:roundWithOverlayColor="@color/corner_color"-----圆形或圆角四个角漏出的颜色
  fresco:roundingBorderWidth="2dp"-----圆形或圆角的边框宽度
  fresco:roundingBorderColor="@color/border_color"-----圆形或圆角的边框颜色
/>

四、示例代码

示例代码:http://download.csdn.net/detail/wang295689649/9863934



注:官网文档非常详细,建议查看文档API,各功能介绍


  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ya-Jun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值