为了账号安全,请及时绑定邮箱和手机立即绑定

简单的Fresco动画图片实现

标签:
Android

1、添加Fresco依赖

     //静态图片
    compile 'com.facebook.fresco:fresco:0.12.0'
    // 支持 GIF 动图,需要添加
    compile 'com.facebook.fresco:animated-gif:0.12.0'

2、添加权限

//网络权限
    <uses-permission android:name="android.permission.INTERNET"/>

3、Fresco图片缓存(MyApp)

public class MyApp extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        Fresco.initialize(this);
    }
}

在清单中添加MyApp
图片描述

android:name=".MyApp"

5、布局(activity_main)

<com.facebook.drawee.view.SimpleDraweeView
            android:id="@+id/main_sdv2"
            android:layout_marginTop="20dp"
            android:layout_width="200dp"
            android:layout_height="200dp"
            fresco:actualImageScaleType="focusCrop"
            fresco:placeholderImage="@mipmap/placeholder_image"
            fresco:placeholderImageScaleType="focusCrop"//默认图片
            fresco:progressBarImage="@mipmap/progress_image"//进度圈
            fresco:progressBarImageScaleType="focusCrop"
            fresco:progressBarAutoRotateInterval="5000"
            fresco:failureImage="@mipmap/error"//加载失败图片
            fresco:failureImageScaleType="focusCrop"
            fresco:retryImage="@mipmap/retry"//重新加载
            fresco:retryImageScaleType="focusCrop"
            fresco:fadeDuration="5000"
            fresco:backgroundImage="@android:color/holo_orange_light"
            fresco:roundAsCircle="true"
            fresco:roundedCornerRadius="30dp"
            fresco:roundTopLeft="true"
            fresco:roundTopRight="true"
            fresco:roundBottomLeft="true"
            fresco:roundBottomRight="true"
            fresco:roundingBorderWidth="10dp"//圆圈边框
            fresco:roundingBorderColor="#008dd7"
            />

主Activity(MainActivity)

//网络图片
Uri uri = Uri.parse("http://b370.photo.store.qq.com/psb?/V14YKAbO0HQVDi/lqU0YAlRybs1Qnq168OGhqg2XhAd*ggnfWk7Oay6ZCI!/b/dHIBAAAAAAAA&bo=WgBaAFoAWgACPBg!&rf=viewer_4");
        SimpleDraweeView draweeView1 = (SimpleDraweeView) findViewById(R.id.main_sdv2);
        draweeView1.setImageURI(uri);
        //创建DraweeController
        DraweeController controller = Fresco.newDraweeControllerBuilder()
                //重试之后要加载的图片URI地址
                .setUri(uri)
                //设置点击重试是否开启
                .setTapToRetryEnabled(true)
                //动画播放
                .setAutoPlayAnimations(true)
                //设置旧的Controller
                .setOldController(draweeView1.getController())
                //构建
                .build();
        //设置DraweeController
        draweeView1.setController(controller);

点击这里下载布局里的图片资源 密码:8kqk


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消