Программно установить поля в MotionLayout - PullRequest
0 голосов
/ 03 июня 2019

У меня есть некоторые представления, для которых необходимо установить некоторые поля программно (из слушателя applyWindowInsets), но представления, кажется, игнорируют любые поля, которые я установил с помощью своего кода, даже если я не анимирую поля.

Я могу просто установить отступы, но не могу выполнить то, что мне нужно, используя только отступы.

Похоже, что проблема связана с MotionLayout, так как он работает нормально, если это ConstraintLayout.

Я использовал этот метод утилит.

public static void addTopMargin(View v, int margin) {
    ((ViewGroup.MarginLayoutParams) v.getLayoutParams()).topMargin += margin;
}
...