#android #android-scrollview #android-nestedscrollview #android-motionlayout
Вопрос:
У меня есть MotionLayout
внутри а ScrollView
, где я прячусь и показываю Views
во Transition
время перехода от одного ConstraintSet
к другому.
У меня возникает пара проблем, когда я добавляю a ScrollView
в качестве родителя:
- Анимация между любыми двумя
ConstraintSet
s пропускает все кадры, кроме конца. - Переходы между некоторыми
ConstraintSet
s не дают того же результата, что и без (я понимаю, что это может быть из-за неполных/неправильныхConstraintSet
s, определенных в сцене, однако я просмотрел код и не могу найти никакого разумного объяснения).
Сначала я подумал, что проблема связана с пересчетом размера/границ MotionLayout
(из-за недавно добавленного родителя), который был изменен с "android:layout_height="match_parent"
на "android:layout_height="wrap_content"
, и поэтому я сбросил высоту до жестко заданного значения, чтобы посмотреть, будет ли это оптимизировать рисунок. Но это не дало никакой разницы.
Я также попробовал motion:layoutDuringTransition="ignoreRequest"
amp; motion:layoutDuringTransition="honorRequest"
на всех переходах, но опять безрезультатно.
Примечание: Я пытаюсь пропустить добавление макета и сцены в пост просто потому, что моя сцена содержит 11 Transitions
и 18 ConsraintSet
секунд. Я знаю, что это немного сложный макет, где следующий шаг появляется, когда пользователь выбирает один из текущих вариантов.