Lottie的使用

Lottie支持API 16以上版本使用,android 官方地址Lottie

  • Lottie官方文档
  • Lottie动画网站,这里面有各种各样的json动画
  • Lottie相关的几篇博客 :lottie-android 框架使用及源码解析,Lottie开源动画库介绍与使用示例

1.项目配置

dependencies {
    compile 'com.airbnb.android:lottie:2.2.5'
}

2.布局文件使用

  • 直接使用json
    lottile_fileName=”hello-world.json”,这里就是引用的json文件,此文件直接放在assets目录下。json文件可以再上面给的网站下载,然后放在文件下,修改名字即可
<com.airbnb.lottie.LottieAnimationView
            android:id="@+id/animation_view"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:lottie_fileName="hello-world.json"
            app:lottie_loop="true"
            app:lottie_autoPlay="true" />
  • 如果需要用到带图片的json,lottie_imageAssetsFolder这个设置为图片文件夹,当然文件夹是放在assets下面的。
<com.airbnb.lottie.LottieAnimationView
            android:id="@+id/animation_view"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:lottie_imageAssetsFolder="counttime"
            app:lottie_fileName="hello-world.json"
            app:lottie_loop="true"
            app:lottie_autoPlay="true" />

3.代码中使用

        LottieAnimationView animation= (LottieAnimationView) findViewById(R.id.animation_view);
        animation.setImageAssetsFolder("counttime/");
        animation.setAnimation("321go.json");
        animation.loop(true);
        animation.playAnimation();

4.动画的监听


Animator.AnimatorListener animatorListener = new Animator.AnimatorListener() {
            @Override
            public void onAnimationStart(Animator animator) {
            //TODO
            }
            @Override
            public void onAnimationEnd(Animator animator) {
                     //TODO
            }
            @Override
            public void onAnimationCancel(Animator animator) {
            }
            @Override
            public void onAnimationRepeat(Animator animator) {
            }
        };
        animation.addAnimatorListener(animatorListener);
        animation.playAnimation();
    }

5.开发过程中遇到的问题

  • 设置json文件,播放崩溃
    库版本过低导致,我刚开始使用1.0.1版本会遇到这个问题,更新到1.5.1就播放正常
  • 带图片的动画,图片播发重叠的问题
    刚开始我用1.5.0版本的库,播放图片,会出现这种状况,改成最新版本就没有了
  • 所以建议使用最新的库,目前最新版本2.2.5

你可能感兴趣的:(android动画)