我正在使用自定义RecyclerView
的{{1}}。
我希望在向下滚动时更改RecyclerViewOnScrollListener
项高度,并在向上滚动时返回原始高度。
我已经在同一个监听器中为bottomBar制作动画,但我无法理解如何在RecyclerView中为每个项目制作动画。我尝试过for循环,但我不认为这是正确的想法。
RecyclerView
答案 0 :(得分:0)
定义一种方法,为ConvertView
设置动画,如下所示:
private void setAnimation(View viewToAnimate,int position) {
if (position > lastPosition) {
lastPosition = position;
Animation animation = AnimationUtils.loadAnimation(activity, R.anim.anim_content);
viewToAnimate.startAnimation(animation);
}
}
在适配器的onBindViewHolder
方法中调用动画方法:
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
// Do your initialization
setAnimation(holder.convertView, position);
}
这里是动画:(anime_content.xml)
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="25%p"
android:toYDelta="0%p"
android:duration="300"
android:interpolator="@android:anim/decelerate_interpolator" />
此示例将为您上次充气的回收者视图行设置从下到上的动画。你可以随心所欲地改变你的动画。
祝你好运!