アイテムを含む RecyclerView を含む DrawerLayout を使用してドロワーを作成しました。RecyclerView に layoutAnimation をアタッチして、ドロワーを開いたときにアイテムが横から入ってくるようにしました。これは最初はうまく機能しますが、2回目に引き出しを開くと、すべてがすでに整っています. 引き出しが開かれるたびにlayoutAnimationを実行したいと思います。
これまでに試したことは、カスタム ActionBarDrawerToggle (とにかくそれが必要です) を用意し、次を追加することです。
@Override
public void onDrawerOpened(final View drawerView) {
super.onDrawerOpened(drawerView);
final RecyclerView recyclerView =
(RecyclerView) drawerView.findViewById(R.id.drawer_content);
if (recyclerView != null) {
recyclerView.startLayoutAnimation();
}
}
アニメーションを再実行するため、ある程度機能しますが、引き出しを開くとすべてのアイテムがそこにあり、それらが消えてアニメーションが開始されます。
ドロワーが閉じられるたびにドロワーアイテムビューを「リセット」する方法は誰にもありますか?
これらが必要かどうかはわかりませんが、とにかく含めます
<--! layout_animation.xml -->
<layoutAnimation
xmlns:android="http://schemas.android.com/apk/res/android"
android:animation="@anim/slide_from_right"
android:delay="15%"
android:animationOrder="normal"
/>
<--! slide_from_right.xml -->
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="100%p"
android:interpolator="@android:anim/decelerate_interpolator"
android:toXDelta="0"
/>