一、前言
在开发APP的过程中,需要在APP中实现设计同学的UE效果动画,一般都是通过代码实现的,当对于较复杂的动画时,例如直播中刷礼物时的动画,这时利用代码实现会比较复杂。而且Android和iOS两端不好统一效果,如果用gif图片来实现的话,在图片大小和动画帧数之间很难权衡。而且会导致内存吃紧。为了解决这样的问题,今天来介绍一款实现复杂动画的开源库:SVGA。
GIF.gif
二、下面介绍用法:
1、导入包
首先在项目的build.gradle中加入
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
接着
com.github.yyued:SVGAPlayer-Android:2.5.3
2、添加混淆
-keep class com.squareup.wire.** { *; }
-keep class com.opensource.svgaplayer.proto.** { *; }
3、使用
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/mSVGAKninghtood"
android:background="#0000"
fresco:autoPlay="true"
fresco:clearsAfterStop="true"
fresco:loopCount="1" />
注意:
首先布局文件,注意要设置具体高度,不能用wrap_content;
然后将准备好的.svga文件放在assets下;
如图所示:
图片.png
4、 一般用的用的最多的两种加载用法
a. 加载assets目录下的SVG