0

我拥有带图像的回收站视图。我可以在点击项目时应用翻页动画。现在,当倒数计时器耗尽时,我想将所有图像翻转在一起。我如何动画所有网格项目一次?同时动画制作所有回收站视图项目

这是我的适配器的onBindViewHolder的样子,

@Override 
    public void onBindViewHolder(final CustomViewHolder viewHolder, final int position) { 

     Picasso.with(context).load(imageList.get(position).getImageUrl()).placeholder(R.drawable.placeholder).into(viewHolder.imageView); 

     viewHolder.holder.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 

       AnimatorSet setLeftOut = (AnimatorSet) AnimatorInflater.loadAnimator(context, 
         R.animator.crad_flip_right_out); 
       AnimatorSet setLeftIn = (AnimatorSet) AnimatorInflater.loadAnimator(context, 
         R.animator.card_flip_left_in); 
       setLeftOut.setTarget(viewHolder.frontView); 
       setLeftIn.setTarget(viewHolder.backView); 
       setLeftOut.start(); 
       setLeftIn.start(); 
      } 
     }); 

    } 

回答

1

试试这个:

@Override 
public void onBindViewHolder(final CustomViewHolder viewHolder, final int position) { 

    Picasso.with(context).load(imageList.get(position).getImageUrl()).placeholder(R.drawable.placeholder).into(viewHolder.imageView); 

    viewHolder.holder.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      animateView(viewHolder); 
     } 
    }); 

} 

public void animateViewsOfRecyclerView(){ 
    for(int i=0;i<recyclerviewAdapter.getCount();++i){ 
     animateView(recyclerview.findViewHolderForAdapterPosition(i)); 
    } 
} 
public void animateView(ViewHolder viewholder){ 
    AnimatorSet setLeftOut = (AnimatorSet) AnimatorInflater.loadAnimator(context, 
      R.animator.crad_flip_right_out); 
    AnimatorSet setLeftIn = (AnimatorSet) AnimatorInflater.loadAnimator(context, 
      R.animator.card_flip_left_in); 
    setLeftOut.setTarget(viewHolder.frontView); 
    setLeftIn.setTarget(viewHolder.backView); 
    setLeftOut.start(); 
    setLeftIn.start(); 
} 

调用方法 “animateViewsOfRecyclerView()” 时,你需要动画的所有意见。

+0

它的工作!谢谢 –

相关问题