Ich möchte animierte Sicht auf klicken Sie darauf. Ich animiere diese Ansicht mit AnimatorSet
Aber wenn Benutzer scrollen zu diesem Zeitpunkt Status der Animation ist nicht gepflegt oder nicht clearAnimation richtig. Es animiert das Symbol eines anderen Gegenstands. hat jemand eine idee drauf?RecyclerView Re-animieren Ansichten beim Scrollen
Animation Methode:
public static void likeAnimation(Object object) {
if (object == null) {
return;
}
AnimatorSet set = new AnimatorSet();
Object myView = object;
set.setInterpolator(new LinearInterpolator());
set.playTogether(
ObjectAnimator.ofFloat(myView, "rotation", 0, 360)
);
set.setDuration(500).start();
}
RecyclerView Code:
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
holder.imageView_like.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View v) {
likeAnimation(v);
}
}
In der Recycler-Ansicht werden die Ansichten wiederverwendet, die vom Layoutmanager übernommen werden. Die Animation kommt beim Scrollen zum nächsten Element. können Sie die Logik schreiben - stoppen Sie die Animation, wenn Sie mit dem Scrollen begonnen haben. Sie haben herausgefunden, ob die Recycleransicht scrollt oder nicht, wenn Sie die 'onScroll()' Methode überschreiben. In diesem stoppen Sie die Animation –
@Navaspk Ja, jedes Mal recycleerView Aufruf 'onCreateViewHolder' also verwende ich' clearAnimation() 'für diese Ansicht und ich angewendet' clearAnimation' auch in 'onViewDetachedFromWindow (ViewHolder Inhaber)' aber immer noch es animiert und Status beibehalten oder Animation stoppen. Wenn möglich, dann Code vorschlagen oder sonst. Vielen Dank. –