У меня есть RecyclerView
. Каждый из его элементов вида ресайклера может быть либо расширен, либо нет. Одновременно может быть только один элемент.RecyclerView: размер анимированного элемента
В сущности, я пытаюсь воссоздать список истории в лиллиповом диалоге.
Я нашел, что using a LayoutTransition on RecyclerViewmakes it crash.
Но я не смог правильно анимировать изменение позиции между обоими состояниями.
Я попытался getItemAnimator().setSupportsChangeAnimations(true)
в сочетании с notifyItemChanged(getPosition())
но есть две проблемы:
- Зрение воссоздано, что делает переход довольно странно, как он исчезает в выше следующем пункте в то же время, что и элемент движется. Новое представление, которое появляется, не изменяет размер, оно уже в полном размере.
- По мере воссоздания представления старое изображение исчезает, когда новое затухает, что делает мерцание фонового цвета.
Я также попытался установить в LayoutTransition
на представлении элемента для продолжительности анимации, но проблема с этим подходом является то, что расположение RecycleView обновляет сразу и не следовать анимации.
Я создал небольшой демонстрационный проект этой проблемы для обеих попыток. The projects sources are here.
Как создать плавный переход на изменение макета элемента?
Извините, что у меня нет ответа для вас, но я имею дело с одной и той же проблемой, вам удалось заставить ее работать еще? Я буду держать вас в курсе того, что мне удалось! –
Я довольно близко, следите за обновлениями –
Мне не удалось приблизиться к проектам, которые я связал. С нетерпением ждем вашей работы;) –