在日常的Android
开发中,做一些耗时操作的时候,我们需要使用加载动画。这篇博客给大家推荐一个漂亮的加载动画开源库AVLoadingIndicatorView
,希望能帮看文章的小伙伴提高开发效率。
AVLoadingIndicatorView
一个漂亮的加载动画开源库。
引入项目
dependencies {
implementation('com.wang.avi:library:2.1.3')
}
截止我发博客的时候,目前版本是2.1.3
版本。需要最新版本需要查看开源库的wiki
效果图
使用示例
XML中的简单使用:
<com.wang.avi.AVLoadingIndicatorView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:indicatorName="BallPulseIndicator"/>
XML中的进阶使用:
<com.wang.avi.AVLoadingIndicatorView
android:id="@+id/avi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/AVLoadingIndicatorView"
android:visibility="visible"
app:indicatorName="BallPulseIndicator"
app:indicatorColor="your color"/>
显示或者隐藏的使用:
void startAnim(){
avi.show();
}
void stopAnim(){
avi.hide();
}
支持的样式
效果图的样式:
第一行
- BallPulseIndicator
- BallGridPulseIndicator
- BallClipRotateIndicator
- BallClipRotatePulseIndicator
第二行
- SquareSpinIndicator
- BallClipRotateMultipleIndicator
- BallPulseRiseIndicator
- BallRotateIndicator
第三行
- CubeTransitionIndicator
- BallZigZagIndicator
- BallZigZagDeflectIndicator
- BallTrianglePathIndicator
第四行
- BallScaleIndicator
- LineScaleIndicator
- LineScalePartyIndicator
- BallScaleMultipleIndicator
第五行
- BallPulseSyncIndicator
- BallBeatIndicator
- LineScalePulseOutIndicator
- LineScalePulseOutRapidIndicator
第六行
- BallScaleRippleIndicator
- BallScaleRippleMultipleIndicator
- BallSpinFadeLoaderIndicator
- LineSpinFadeLoaderIndicator
第七行
- TriangleSkewSpinIndicator
- PacmanIndicator
- BallGridBeatIndicator
- SemiCircleSpinIndicator
混淆代码
-keep class com.wang.avi.** { *; }
-keep class com.wang.avi.indicators.** { *; }
如果你的项目需要开启混淆配置,需要在混淆文件里面加入上面的代码。