Я пытаюсь анимировать изменение видимости TextView в корневом ConstraintLayout, используя простую анимацию TransitionManager.beginDelayedTransition(ViewGroup sceneRoot)
.
При установке видимости на View.VISIBLE
все работает как положено.
С другой стороны, при установке видимости на View.GONE
непосредственно перед тем, как TextView будет установлен на GONE, текст, который содержит TextView, искажается / вид остается видимым.
Используемый код:
private fun onTitleClicked(@IdRes viewId: Int) {
val layout = findViewById<View>(viewId)
TransitionManager.beginDelayedTransition(scene_root)
val expanded = layout.visibility == View.VISIBLE
layout.visibility = if (expanded) View.GONE else View.VISIBLE
}
Используемый XML:
<TextView
android:id="@+id/tv_architecture_components_title"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:background="@drawable/bg_blue_rectangle"
android:foreground="?android:selectableItemBackground"
android:gravity="center"
android:onClick="onClick"
android:padding="10dp"
android:text="@string/android_architecture_components"
android:textColor="@color/md_blue_800"
android:textSize="16sp"
app:layout_constraintBottom_toTopOf="@+id/btn_architecture_components1"
app:layout_constraintEnd_toStartOf="@+id/guideline_end"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="@+id/guideline_start"
app:layout_constraintTop_toBottomOf="@+id/tv_code_labs_title"/>
Это выглядит так:
Есть идеи или предложения по решению проблемы?
Обновление
Кажется, что происходит только с телефонами Samsung.