我有一个RecyclerView,并且我想允许用户长按选择视图。这个功能本身没有问题,但是当我调用notifyItemChanged()或notifyDataSetChanged来指示选定时,水波纹效果会立即终止。我该如何防止这种情况发生?请注意,此问题以前已经被问过(例如示例1,示例2)。对于这些问题的答案是使用notifyItemChanged而不是notifyDataSetChanged。我尝试了这两种方法,但对我来说并没有改变这种行为。
a) 将DiffUtilCallback添加到您的适配器中 b) 确保您的areItemsTheSame方法通过id而不是内容比较项目。 因为如果它按内容比较,它会认为您删除了先前的单元格并插入了新单元格,并杀死涟漪效果。