Я хочу, чтобы анимация, указанная в layoutAnimation, работала каждый раз, когда какой-либо элемент появляется в моем представлении переработчика. В настоящее время следующая анимация работает как задумано и применяется при первом отображении представления. Однако после прокрутки внутри моего recycerview к элементу не применяется анимация - это нежелательно. Я хочу, чтобы к элементу применялась анимация каждый раз, когда он появляется на экране - независимо от того, был ли он переработан или нарисован в первый раз.
Не работает ли layoutAnimation таким образом? Это только для первоначального размещения макета внутри родительского элемента?
Мой элемент, который применяется к программе просмотра:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="200dp"
android:layout_height="400dp"
android:id="@+id/item_life_event_id"
android:background="@color/colorAccent"
android:layoutAnimation="@anim/animation">
<TextView
android:id="@+id/textViewEventTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TextView"
android:layout_margin="10dp"
android:gravity="center_horizontal"
android:textSize="18sp"/>
</LinearLayout>
анимация. xml
<?xml version="1.0" encoding="utf-8"?>
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
android:animation="@anim/animation_small"
android:animationOrder="normal"/>
animation_small. xml
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="0"
android:fillAfter="true">
<scale
android:fromXScale="100%"
android:fromYScale="100%"
android:toXScale="50%"
android:toYScale="50%"
android:pivotX="50%"
android:pivotY="50%"
android:interpolator="@android:anim/decelerate_interpolator"
/>
</set>