RecyclerView notifyItemChanged调用onBindViewHolder也在不可见的单元格上

时间:2019-10-02 12:02:55

标签: android android-recyclerview

我有一个垂直的ul,其中li的项目类型不同,另外一个const newProduct ={...}; this.setstate(st => ({ products: [...st, newProduct] })); 。这是一个消息屏幕。

我想在单元格上单击以显示/隐藏消息日期。

RecyclerView

因此,我添加了使用LinearLayoutManager

重新加载视图的方法
ViewHolder

但问题最终就在于,由于此行override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { val layout = R.layout.xxx val viewHolder = ViewHolder(LayoutInflater.from(parent.context).inflate(layout, parent, false)) viewHolder.itemView.layout?.setOnClickListener { setMessageDateVisibility(viewHolder) } return viewHolder } ,覆盖notifyItemChanged(pos)方法对所有不可见的单元格都进行了调用,所以我的屏幕滞后于150/200个单元格

您能帮我找到解决方法吗?

0 个答案:

没有答案