Это kotlin
, но почти не отличается от Java
.
- Укажите идентификатор
rootLayout
. Теперь используйте этот код:
val constraintSet = ConstraintSet()
constraintSet.clone(rootLayout) //Your rootLayout
constraintSet.connect(
yourView.id, //ID of the view whose position you want to change
ConstraintSet.START,
yourMyIdView.id, //ID of the correspondent view
ConstraintSet.END
)
constraintSet.applyTo(rootLayout) //Your rootLayout
Совет: вы также можете анимировать изменение, установив animateChange
на true
в rootLayout
(XML) или вы можете использовать анимацию Transition
, которую я всегда предпочитаю.
val transition: Transition = ChangeBounds()
transition.interpolator = AccelerateInterpolator() //Or Any other Interpolator
transition.duration = 700 //Duration
TransitionManager.beginDelayedTransition(rootLayout, transition) //Your rootLayout
constraintSet.applyTo(rootLayout) //Remember to put above 4 lines before this
Вы можете дополнительно добавить Alpha
анимацию, используя yourView.animate().alpha(1f).duration = 700 //1f (0 to 1) is the value and 700 is the duration
.
Помните, это почти не отличается от Java, вам просто нужно добавить ;
в конце, возможно.