Вашего решения является совершенным, но может по сложному при использовании ViewAnimator, после того, как делают некоторые испытания и больше исследований, я наконец нашел ОЧЕНЬ простой способ. В итоге я добавил андроид: startOffset в анимации XML. Таким образом, анимация ожидает желаемого количества времени перед запуском.
Exemple:
Если длительность выдвижная установлен в 500ms, а затем установить startOffset слайда, чтобы 500мс.
Slide_in_from_bottom.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:fromXDelta="0%" android:toXDelta="0%"
android:fromYDelta="100%" android:toYDelta="0%"
android:duration="500" android:startOffset="[Replace with fade out duration]" />
</set>