RecyclerView
単一の item 、2 つの s に 2つのビューがあり、RelativeLayout
ある時点で両方RelativeLayouts
を反転LayoutA
して0 to 180
います。それは完璧に機能しますが、画面にスペースがない場合 (例: の最後の項目)、このフリップを開始する前に、奇妙な効果が得られますLayoutB
-180 to 0
RecyclerView
気が狂う
<set xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Rotate. -->
<objectAnimator
android:valueFrom="0"
android:valueTo="180"
android:propertyName="rotationY"
android:interpolator="@android:interpolator/accelerate_decelerate"
android:duration="1000" />
<objectAnimator
android:valueFrom="1.0"
android:valueTo="0.0"
android:propertyName="alpha"
android:startOffset="0"
android:duration="1000" />
</set>
フリップイン
<set xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Rotate. -->
<objectAnimator
android:valueFrom="180"
android:valueTo="0"
android:propertyName="rotationY"
android:interpolator="@android:interpolator/accelerate_decelerate"
android:duration="1000" />
<objectAnimator
android:valueFrom="0.0"
android:valueTo="1.0"
android:propertyName="alpha"
android:duration="1000"
android:startOffset="0"/>
</set>
アダプターコード
AnimatorSet setRightOut = (AnimatorSet) AnimatorInflater.loadAnimator
(mContext, R.animator.flip_right_out);
AnimatorSet setLeftIn = (AnimatorSet) AnimatorInflater.loadAnimator(mContext,
R.animator.flip_left_in);
setRightOut.setTarget(holder.layoutA);
setRightOut.setDuration(1500);
setLeftIn.setTarget(holder.layoutB);
setLeftIn.setDuration(1500);
setLeftIn.start();
setRightOut.start();
scrollToPosition
メソッドへの呼び出しを行っていませんが、logcatはこれを繰り返し出力します
ログキャット
W/RecyclerView: RecyclerView does not support scrolling to an absolute position. Use scrollToPosition instead
これに対する修正はありますか?