Лучший способ анимировать изменение макета ограничения на Android - PullRequest
0 голосов
/ 07 февраля 2019

Я создаю анимацию, которая будет перемещать, изменять содержимое и размер просмотров в макете.Я использую макет ограничения.У меня есть два XML-файла, один для обычного макета, другой для макета, на который мне нужно перейти.

Мне нужно изменить: ограничения, текст, размер текста и видимость нескольких представлений.

Iпробовал использовать:

ConstraintLayout rootLayout = (ConstraintLayout) findViewById(R.id.main);
ConstraintSet newConstraint = new ConstraintSet();
newConstraint.load(this, R.layout.activity_selected);

TransitionManager.beginDelayedTransition(rootLayout);
newConstraint.applyTo(rootLayout);

Однако это не обновляет размер текста, так как он не является частью класса ConstraintLyout

Я также пытался использовать

selectedScene = Scene.getSceneForLayout(sceneRoot, R.layout.activity_selected, this);
TransitionManager.go(selectedScene, set);

Но это не приводит к хорошей анимации и требует дополнительных сложностей, таких как создание setEnterAction () и т. Д.

Существует ли элегантный способ анимировать изменение макета ограничения при изменении текста и размера текста в представлениях

1 Ответ

0 голосов
/ 24 февраля 2019

С помощью наборов ограничений вы можете изменять только ограничения вида, но не его свойства, такие как размер текста, цвет и т. Д.Чтобы анимировать эти свойства, я бы предпочел, чтобы вы вместо этого использовали objectanimator.Там у вас много возможностей.

...