У меня есть ConstraintLayout
с навигацией внизу. В некоторых случаях мне нужно скрыть нижнюю навигацию с анимацией ConstraintLayout
.
XML-файл макета:
<android.support.constraint.ConstraintLayout
android:id="@+id/lMainConstraint"
android:layout_width="match_parent"
android:layout_height="match_parent">
. . .
toolbar and others views
. . .
<com.aurelhubert.ahbottomnavigation.AHBottomNavigation
android:id="@+id/vNavigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent" />
</android.support.constraint.ConstraintLayout>
Чтобы скрыть навигацию, сдвинув ее вниз:
val newSet = ConstraintSet()
newSet.clone(mInitialSet)
newSet.connect(R.id.toolbar, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.TOP)
newSet.connect(R.id.vNavigation, ConstraintSet.TOP, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM)
val transition = AutoTransition()
transition.interpolator = AccelerateInterpolator()
transition.duration = 250
TransitionManager.beginDelayedTransition(lMainConstraint, transition)
newSet.applyTo(lMainConstraint)
Однако vNavigation
скрывается только наполовину. Мой R.id.toolbar
наверху прячется полностью, любой другой ViewGroup
прячется без проблем.
Ввод AHBottomNavigation
в LinearLayout
или любой другой смысл не имеет смысла.
Использование библиотеки - com.aurelhubert: ahbottomnavigation: 2.2.0