【发布时间】:2017-08-09 10:55:21
【问题描述】:
我有一个RecyclerView。当我单击RecyclerView 中某个项目内的按钮时,我想更改该项目中View 的颜色。以下是我的代码,它工作正常。但是,问题是该项目将有一个丑陋的动画。我想更新没有动画的项目。我该怎么做?对了,我不想关动画,只为了这个点击事件。
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
public ImageView imageView;
public Button button;
public ItemViewHolder(View view) {
super(view);
//do something
button.setOnClickListener(this);
}
@Override
public void onClick(View view) {
//change color
notifyItemChanged(getAdapterPosition());
}
}
【问题讨论】:
-
你尝试使用
notifyItemChanged(position, Object); -
@RakshitNawani 你的答案有效!
-
乐于助人干杯!!
-
有一个专门的方法可以禁用仅更改项目的动画: ((SimpleItemAnimator) myRecyclerView.getItemAnimator()).setSupportsChangeAnimations(false);参考:developer.android.com/reference/androidx/recyclerview/widget/…
标签: java android android-recyclerview android-animation