Сцена переходного фликера

У меня есть простой вид, содержащий scene root FrameLayout, ListView и пару кнопок внизу.

scene root используется для загрузки и отображения разных сцен, размер изменяется динамически в зависимости от текущего scene. ListView устанавливается в match_parent в обоих направлениях и находится за scene root.

Здесь проблема:

Если я начинаю переход с помощью кнопок внизу, все работает нормально, без проблем, магия. Однако, если я перехожу (✝) в другую сцену, прокручивая (✝✝), переход, кажется, мерцает перед запуском.

Похоже, что механизм рендеринга не загружает первый кадр анимации до того, как ListView аннулирует иерархию из-за прокрутки.

Спасибо за помощь;)

TransitionManager.go(Scene, Transition)

✝✝ Я добавил несколько методов в ListView, чтобы это позволяло

Ответы

Ответ 1

Все приложения Google, использующие переход сцены, который я видел, переходят из какого-либо элемента в ListView в его детали Activity. Поскольку ListView имеет удобное поведение, сразу же останавливая прокрутку при касании, такой переход не вызывает мерцания.

Таким образом, лучше всего будет программно остановить прокрутку до перехода на новый Activity, который выполняется с помощью кода здесь.