美文网首页
关于fresco

关于fresco

作者: 笨coco | 来源:发表于2016-12-27 16:28 被阅读43次

    一、引入fresco

    dependencies{compile'com.facebook.fresco:fresco:0.12.0'}

    二、开始使用

    1.在加载图片之前,你必须初始化Fresco类。你只需要调用Fresco.initialize一次即可完成初始化,在Application的onCreate里面做这件事再适合不;

    2.声明  internet权限

    3.在xml布局文件中, 加入命名空间:xmlns:fresco="http://schemas.android.com/apk/res-auto";

    4.加入SimpleDraweeView:

    5.开始加载图片:

    Uri uri=Uri.parse("https://raw.githubusercontent.com/facebook/fresco/gh-pages/static/logo.png");

    SimpleDraweeView  draweeView=(SimpleDraweeView)findViewById(R.id.my_image_view);

    draweeView.setImageURI(uri);

    三、支持的URI

    Fresco 支持许多URI格式。

    特别注意:Fresco不支持相对路径的URI. 所有的 URI 都必须是绝对路径,并且带上该 URI 的 scheme。

    如下:

    类型SCHEME示例

    远程图片http://,https://

    本地文件file://

    Contentprovider  content://

    asset目录下的资源asset://

    res目录下的资源res://

    Uri中指定图片数据data:mime/type;base64,数据类型必须符合rfc2397规定(仅支持 UTF-8)

    res 示例:

    Uri uri = Uri.parse("res://包名(实际可以是任何字符串甚至留空)/" + R.drawable.ic_launcher);

    四、在XML中使用Drawees

    你必须声明android:layout_width和android:layout_height。如果没有在XML中声明这两个属性,将无法正确加载图像。

    XML属性意义

    fadeDuration淡入淡出动画持续时间(单位:毫秒ms)

    actualImageScaleType实际图像的缩放类型

    placeholderImage占位图

    placeholderImageScaleType占位图的缩放类型

    progressBarImage进度图

    progressBarImageScaleType进度图的缩放类型

    progressBarAutoRotateInterval进度图自动旋转间隔时间(单位:毫秒ms)

    failureImage失败图

    failureImageScaleType失败图的缩放类型

    retryImage重试图

    retryImageScaleType重试图的缩放类型

    backgroundImage背景图

    overlayImage叠加图

    pressedStateOverlayImage按压状态下所显示的叠加图

    roundAsCircle设置为圆形图

    roundedCornerRadius圆角半径

    roundTopLeft左上角是否为圆角

    roundTopRight右上角是否为圆角

    roundBottomLeft左下角是否为圆角

    roundBottomRight右下角是否为圆角

    roundingBorderWidth圆形或者圆角图边框的宽度

    roundingBorderColor圆形或者圆角图边框的颜色

    roundWithOverlayColor圆形或者圆角图底下的叠加颜色(只能设置颜色)

    viewAspectRatio控件纵横比

    可用的缩放类型

    center居中,无缩放。

    centerCrop保持宽高比缩小或放大,使得两边都大于或等于显示边界,且宽或高契合显示边界。居中显示。

    focusCrop同centerCrop, 但居中点不是中点,而是指定的某个点。

    centerInside缩放图片使两边都在显示边界内,居中显示。和fitCenter不同,不会对图片进行放大。

    如果图尺寸大于显示边界,则保持长宽比缩小图片。

    fitCenter保持宽高比,缩小或者放大,使得图片完全显示在显示边界内,且宽或高契合显示边界。居中显示。

    fitStart同上。但不居中,和显示边界左上对齐。

    fitEnd同fitCenter, 但不居中,和显示边界右下对齐。

    fitXY不保存宽高比,填充满显示边界。

    none如要使用tile mode显示, 需要设置为none

    相关文章

      网友评论

          本文标题:关于fresco

          本文链接:https://www.haomeiwen.com/subject/gtdtvttx.html