public void startIfNecessary(float currentValue) {
            if (!hasStarted && predicate.shouldStart(currentValue)) {
                start();
                hasStarted = true;
            }
        }
A {@link ValueAnimator} that starts once a given predicate returns true.
library/src/main/java/com/heinrichreimersoftware/materialintro/view/InkPageIndicator.java