在RecyclerView中禁用滚动动画

时间:2017-08-15 05:23:55

标签: android scroll android-recyclerview

我有一个RecyclerView,除了以编程方式滚动之外基本上什么也没做。问题是我需要这个RecyclerView滚动到没有动画的位置。这是我正在使用的代码。

((LinearLayoutManager)recyclerView.getLayoutManager()).scrollToPositionWithOffset(position, offset);

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以自己动画itemView, 使用两个变量startPositionendPosition作为起始位置和结束位置,animate(viewHolder, false)是一个可以添加或删除动画的函数

public void onBindViewHolder(ViewHolder viewHolder, int position) {
        final DataModel dataModel = dataList.get(position);

        viewHolder.textTittle.setText(dataModel .getTitle());    

        if (startPosition <=position  && position<= endPosition) {
            animate(viewHolder, false);
        } else {
            animate(viewHolder, true);
        }    

    }

这样的动画功能
public void animate(RecyclerView.ViewHolder viewHolder) {
            final Animation animAnticipateOvershoot = AnimationUtils.loadAnimation(context,
                    R.anim.animator_for_bounce);
            viewHolder.itemView.setAnimation(animAnticipateOvershoot);
        }