Попробуйте позвонить requestLayout()
перед запуском анимации следующим образом:
Animation quickEntryAnimation = new HeightAnimation(mQuickEntryArea, DisplayHelper.dpToPixel(200, this), mQuickEntryArea.getHeight() < 10);
quickEntryAnimation.setDuration(300);
mQuickEntryArea.requestLayout();
mQuickEntryArea.startAnimation(quickEntryAnimation);
По крайней мере для меня это решает проблему.
ОБНОВЛЕНИЕ: Я только что проверил другое созвездие, где это былоне работает должным образом.Я копался в коде рендеринга класса View
и заметил, что было несколько процедур рендеринга.Активирующая анимация фактически запускается родителем представления.В случае, если вышеуказанное решение не работает для вас, попробуйте сделать что-то вроде этого:
mQuickEntryArea.startAnimation(quickEntryAnimation);
((ViewGroup) mQuickEntryArea.getParent()).invalidate();
Помните, что родитель не должен быть ViewGroup
!
Привет, Дэвид