博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Fresco图片显示
阅读量:7052 次
发布时间:2019-06-28

本文共 2174 字,大约阅读时间需要 7 分钟。

hot3.png

官网:

优点:

    1、图片从屏幕消失时立刻释放。

    2、如果网络加载失败的话,可点击占位符重新加载图片。

    3、可以在图片上显示加载的进度条。

    4、优先显示低分辨率的图片,待到数据到达后再显示高清图片。

Gradle配置

 compile 'com.facebook.fresco:fresco:0.9.0+'

在Application的onCreate方法中初始化

Fresco.initialize(this);

布局文件

xmlns:app="http://schemas.android.com/apk/res-auto"

设置显示图片

方法一: ImageRequest request = ImageRequestBuilder        .newBuilderWithSource(Uri.parse("http://attimg.dospy.com/img/day_100708/20100708_2c925dfb4b5f0aa64b6cL2zFfXzrsP3x.gif"))        .setProgressiveRenderingEnabled(true)        .build();        DraweeController controller = Fresco.newDraweeControllerBuilder()        .setImageRequest(request)        .setOldController(simpleDraweeView.getController())        .setAutoPlayAnimations(true) // 设置动图自动播放        .build();simpleDraweeView.setController(controller);方法二:simpleDraweeView.setImageURI(Uri.parse());

各种特效

    a、点击重新加载图片

布局文件:frescon:retryImage="@mipmap/notice_ico_birthday"  // 设置4次点击重新加载失败后显示的图片************************************************************************************************DraweeController controller = Fresco.newDraweeControllerBuilder()        .setTapToRetryEnabled(true)  // 这里是重点,设置允许点击重新加载        .setUri(Uri.parse("http://www.bz55.com/uploads/allimg/140722/1-140H2114124.jpg"))        .setOldController(simpleDraweeView.getController())        .build();simpleDraweeView.setController(controller);

在代码中设置各种特效

 RoundingParams roundingParams = new RoundingParams()        .setRoundAsCircle(true);GenericDraweeHierarchyBuilder builder = new GenericDraweeHierarchyBuilder(getResources());GenericDraweeHierarchy hierarchy = builder        .setProgressBarImage(new ProgressBarDrawable()) // 设置进度条        .setPlaceholderImage(getResources().getDrawable(R.mipmap.ic_launcher)) // 设置占位符        .setFailureImage(getResources().getDrawable(R.mipmap.notice_ico_undo)) // 设置加载失败的图片        .setRetryImage(getResources().getDrawable(R.mipmap.notice_ico_birthday)) // 设置反复加载失败的图片        .setRoundingParams(roundingParams) // 设置圆角        .build();simpleDraweeView.setHierarchy(hierarchy);simpleDraweeView.setImageURI(Uri.parse("http://www.bz55.com/uploads/allimg/140722/1-140H2114124.jpg"));

 

转载于:https://my.oschina.net/u/2491515/blog/656935

你可能感兴趣的文章
RHEL下部署heartbeat,实现简单故障转移群集
查看>>
SQL如何分批次查询
查看>>
Swift可选值Optionals
查看>>
VMware Workstation Pro 調整硬盤空間(下)
查看>>
在线将Apache Rewrite伪静态规则自动转换为Nginx Rewrite
查看>>
Hibernate实现,使用UUID.主键的生成策略
查看>>
在工作中经常使用的git命令笔记
查看>>
Centos6.4安装mysql-5.5.33绿色版
查看>>
Java反射
查看>>
vmware安装 深度完美ghost winXP SP3 详细图文教程,强调一些重难点与技巧,模拟生产环境必备!...
查看>>
为什么我的日志文件不能继续记录呢
查看>>
如何安装CRX格式?Chrome插件离线安装,CRX格式安装方法 JSON-handle Chrome插件下载...
查看>>
使用Azure Function + Cognitive Services 实现图片自动化审核
查看>>
log4j日志通过flume写入HDFS
查看>>
haproxy代理配置
查看>>
一些转载的知识
查看>>
我的友情链接
查看>>
Android初学必备
查看>>
springboot cache 缓存
查看>>
中国为什么这么贵(续二)
查看>>