animación del nombre correspondiente
Fila 1
BolaPulsoIndicador
BolaCuadrículaPulsoIndicador
BallClipGirarIndicador
BolaClipGirarPulsoIndicador
Fila 2
Indicador de giro cuadrado
BallClipGirarMúltipleIndicador
bolapulsoaumentoindicador
bolagirarindicador
Fila 3
CubeTransitionIndicator
BolaZigZagIndicador
BallZigZagDeflectIndicator
bolatriángulorutaindicador
Fila 4
BolaEscalaIndicador
Indicador de escala de línea
LineScalePartyIndicator
PelotaEscalaMúltipleIndicador
Fila 5
BolaPulsoSincronizaciónIndicador
BolaBeatIndicator
LineScalePulseOutIndicator
LíneaEscalaPulsoSalirRápidoIndicador
Fila 6
bolaescalaondulaciónindicador
bolaescalaondulaciónmúltipleindicador
BallSpinFadeLoaderIndicator
LineSpinFadeLoaderIndicator
Fila 7
TriánguloSkewSpinIndicator
PacmanIndicador
bolacuadrículagolpeindicador
SemicírculoGirarIndicador
Uso actual:
Paso 1:
bulid.gradle
dependencies {
compile 'com.wang.avi:library:2.1.3'
}
Paso 2:
diálogo_cargando.xml
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center">
<com.wang.avi.AVLoadingIndicatorView
android:id="@+id/avi"
style="@style/AVLoadingIndicatorView.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="visible"
app:indicatorColor="#FF0000"
app:indicatorName="LineSpinFadeLoaderIndicator" />
</RelativeLayout>
Paso 3:
estilo.xml
<style name="TransparentDialog" parent="@android:style/Theme.Holo.Light.Dialog">
<item name="android:windowBackground">@android:color/transparent</item>
</style>
Etapa 4:
LoadingDialog.java
/**
* 加载中Dialog
*
* @author mdb
*/
public class LoadingDialog extends AlertDialog {
private static LoadingDialog loadingDialog;
private AVLoadingIndicatorView avi;
public static LoadingDialog getInstance(Context context) {
loadingDialog = new LoadingDialog(context, R.style.TransparentDialog); //设置AlertDialog背景透明
loadingDialog.setCancelable(false);
loadingDialog.setCanceledOnTouchOutside(false);
return loadingDialog;
}
public LoadingDialog(Context context, int themeResId) {
super(context,themeResId);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(R.layout.dialog_loading);
avi = (AVLoadingIndicatorView)this.findViewById(R.id.avi);
}
@Override
public void show() {
super.show();
avi.show();
}
@Override
public void dismiss() {
super.dismiss();
avi.hide();
}
}
Paso 5:
El cuadro de carga muestra
LoadingDialog.getInstance(this).show();
caja de carga oculta
LoadingDialog.getInstance(this).dismiss();