AVLoadingIndicatorView加载效果动画

AVLoadingIndicatorView是一个实现了各种各样加载效果的库,每一种效果都很精美。

运行效果:

github地址:https://github.com/81813780/AVLoadingIndicatorView

Usage

Step 1

Add dependencies in build.gradle.

    dependencies {
       compile 'com.wang.avi:library:2.1.3'
    }

Step 2

Add the AVLoadingIndicatorView to your layout:

Simple

    <com.wang.avi.AVLoadingIndicatorView
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"
        app:indicatorName="BallPulseIndicator"
        />

Advance

    <com.wang.avi.AVLoadingIndicatorView
        android:id="@+id/avi"
        android:layout_width="wrap_content"  //or your custom size
        android:layout_height="wrap_content"  //or your custom size
        style="@style/AVLoadingIndicatorView"// or AVLoadingIndicatorView.Large or AVLoadingIndicatorView.Small
        android:visibility="visible"  //visible or gone
        app:indicatorName="BallPulseIndicator"//Indicator Name
        app:indicatorColor="your color"
        />

Step 3

It's very simple use just like .

   void startAnim(){
        avi.show();
        // or avi.smoothToShow();
   }

   void stopAnim(){
        avi.hide();
        // or avi.smoothToHide();
   }

Proguard

When using proguard need add rules:

-keep class com.wang.avi.** { *; }
-keep class com.wang.avi.indicators.** { *; }

Indicators is load from class names, proguard may change it (rename).

Indicators

the indicators are as follows:

Row 1

  • BallPulseIndicator
  • BallGridPulseIndicator
  • BallClipRotateIndicator
  • BallClipRotatePulseIndicator

Row 2

  • SquareSpinIndicator
  • BallClipRotateMultipleIndicator
  • BallPulseRiseIndicator
  • BallRotateIndicator

Row 3

  • CubeTransitionIndicator
  • BallZigZagIndicator
  • BallZigZagDeflectIndicator
  • BallTrianglePathIndicator

Row 4

  • BallScaleIndicator
  • LineScaleIndicator
  • LineScalePartyIndicator
  • BallScaleMultipleIndicator

Row 5

  • BallPulseSyncIndicator
  • BallBeatIndicator
  • LineScalePulseOutIndicator
  • LineScalePulseOutRapidIndicator

Row 6

  • BallScaleRippleIndicator
  • BallScaleRippleMultipleIndicator
  • BallSpinFadeLoaderIndicator
  • LineSpinFadeLoaderIndicator

Row 7

  • TriangleSkewSpinIndicator
  • PacmanIndicator
  • BallGridBeatIndicator
  • SemiCircleSpinIndicator

Row 8

  • com.wang.avi.sample.MyCustomIndicator
项目中应用:
Activity中使用
DataLoadingDialog mDataLoadingDialog  = new DataLoadingDialog(this);
mDataLoadingDialog.show();
mDataLoadingDialog.dismiss();
public class DataLoadingDialog extends Dialog {
    public DataLoadingDialog(Context context) {
        super(context, R.style.loadingdialog);
    }

    public DataLoadingDialog(Context context, int theme) {
        super(context, theme);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.data_loading);
    }
    public void setMsg(String text) {
    }
}
loadingdialog代码是以下
 
    
data_loading代码是以下
xml version="1.0" encoding="utf-8"?>
xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:app="http://schemas.android.com/apk/res-auto"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:layout_height="match_parent">
        android:id="@+id/avloa"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:visibility="visible"
    app:indicator="BallClipRotate"
    app:indicator_color="@color/red"
       />
   
    
        
        
        
        
        
        
        





你可能感兴趣的:(控件类)