@Override
    public boolean animate(T current, ViewAdapter adapter) {
        Drawable previous = adapter.getCurrentDrawable();
        if (previous != null) {
            TransitionDrawable transitionDrawable = new TransitionDrawable(new Drawable[] { previous, current });
            transitionDrawable.setCrossFadeEnabled(true);
            transitionDrawable.startTransition(duration);
            adapter.setDrawable(transitionDrawable);
            return true;
        } else {
            defaultAnimation.animate(current, adapter);
            return false;
        }
    }
Animates from the previous drawable to the current drawable in one of two ways.

<ol>
    <li>Using the default animation provided in the constructor if the previous drawable is null</li>
    <li>Using the cross fade animation with the duration provided in the constructor if the previous
    drawable is non null</li>
</ol>

@param current {@inheritDoc}
@param adapter  {@inheritDoc}
@return {@inheritDoc}
core/src/main/java/com/bumptech/glide/request/animation/DrawableCrossFadeViewAnimation.java