Я добавляю ImageView
s динамически в MotionLayout
.
Каждый ImageView
, который я динамически добавляю, имеет уникальный идентификатор (почему? Продолжайте читать), поэтому мне нужно предварительно определить все идентификаторы (ids.xml), а затем программно назначить их Идентификаторы ImageView
.
Поскольку динамически добавленные ImageView
не изменяются MotionLayout
, а находятся внутри него, во избежание проблем мне нужно игнорировать каждый из них, выполнив следующие действия с уникальным идентификатором.
<ConstraintSet android:id="@+id/base_constraintset">
<Constraint android:id="@+id/testId001">
<PropertySet
app:applyMotionScene="false"
app:visibilityMode="ignore" />
</Constraint>
<!-- Follows additional 30 similar constraints (only different Id) -->
</ConstraintSet>
Подробнее об этом здесь (https://stackoverflow.com/a/60303082/14230540)
Если то, о чем я прошу, возможно, это сэкономит много почти идентичных строк кода и будет работать.
Это меня спасет:
- Определение всех идентификаторов в ids.xml
- Назначение каждого из этих идентификаторов каждому из ImageView.
- Добавление всех вышеуказанных ограничений в MotionScene.