Floating Action Button. Определение поведения floating buttons

Необходимо направление, в какую сторону искать, и что использовать для реализации подобного интерфейса.

Имеется фрагмент, который содержит оформление, представленное ниже. Справа расположено четыре Floating Action Button. Зеленый фон - это пустая область.

введите сюда описание изображения

Далее, происходит действие, и объект, имеющий состояние Visibility = GONE, переходит в состояние Visibility = visible. Результат представлен ниже на картинке.

введите сюда описание изображения

Необходимо, чтобы все float action buttons были друг под другом на одинаковом расстояние. То есть, если два нижних button'а под номерами "1" и "2" будут подняты (с этим я разобрался, привязал их к view синего цвета с помощью constraint_layout). Но как button'ы под номерами "3" и "4" связать с номерами "1" и "2", чтобы, когда нижние button'ы достигали уровня третьего и четвертого, они все вместе смещались вверх и имели между собой одинаковое расстояние.

Это необходимо для разных разрешений устройств. Где-то все умещается, где-то нет.


Ответы (1 шт):

Автор решения: Sergei Buvaka

Могу вам предложить попробовать MotionLayout. Это очень крутой инструмент для создания анимаций и разных состояний экрана.

Суть его в том, что вы создаете 2 состояния (XML разметки): старовое и конечное. После чего вы можете вызовом одного метода перевести ваш UI из состояния start в состояние end.

В вашем примере вы просто создаете 2 макета: тот что вверху и тот что внизу и просто переключаетесь между ними.

Вот тут есть крутая кодлаба как с ним работать.

→ Ссылка