package com.github.florent37.expectanim.core.custom; import android.animation.Animator; import android.view.View; import com.github.florent37.expectanim.ViewCalculator; import com.github.florent37.expectanim.core.AnimExpectation; import com.github.florent37.expectanim.core.ExpectAnimManager; import java.util.ArrayList; import java.util.List; /** * Created by florentchampigny on 17/02/2017. */ public class ExpectAnimCustomManager extends ExpectAnimManager { private final List<Animator> animations; public ExpectAnimCustomManager(List<AnimExpectation> animExpectations, View viewToMove, ViewCalculator viewCalculator) { super(animExpectations, viewToMove, viewCalculator); this.animations = new ArrayList<>(); } @Override public void calculate() { for (AnimExpectation animExpectation : animExpectations) { if (animExpectation instanceof CustomAnimExpectation) { final CustomAnimExpectation expectation = (CustomAnimExpectation) animExpectation; expectation.setViewCalculator(viewCalculator); final Animator animator = expectation.getAnimator(viewToMove); if (animator != null) { animations.add(animator); } } } } @Override public List<Animator> getAnimators() { return animations; } }