Не работают анимации LayoutTransition CHANGE_APPEARING и CHANGE_DISAPPEARING - PullRequest
0 голосов
/ 05 сентября 2018

У меня есть тестовое приложение с простым LinearLayout с двумя строками. Когда я удаляю нижний ряд, мне бы хотелось, чтобы край между двумя рядами плавно скользил вниз, эффективно скрывая нижний ряд и расширяя верхний ряд.

У меня есть код, который почти решает проблему, но не совсем. Когда я «Ушел» нижний ряд, нижний ряд выдвигается из поля зрения. Тем не менее, верхний ряд также должен быть анимированным. Я включаю CHANGE_APPEARING и CHANGE_DISAPPEARING, чтобы сделать это, и я вижу, что их вызывают, потому что я настроил прослушиватель на запись в журнал при обработке каждого типа.

Однако , когда я вызываю setAnimator () для этих двух типов переходов (как показано ниже), они внезапно замолкают - даже слушатель больше не сообщает, что они вызваны.

...
//setAnimation(lt, mTopFrame, CHANGE_APPEARING, 0, BOTTOM_FRAME_HEIGHT);
//setAnimation(lt, mTopFrame, CHANGE_DISAPPEARING, BOTTOM_FRAME_HEIGHT, 0);
...

private void setAnimation(LayoutTransition lt, FrameLayout fl, final int transitionType, int start, int end) {
    ObjectAnimator oa = ObjectAnimator.ofFloat(fl, "translationY", start, end);
    lt.setAnimator(transitionType, oa);
}

Как мне запустить эти анимации?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...