我们使用DiffUtil.CalculateDiff自定义DiffUtil.Callback来处理对基础数据的更改。
我们元素的标识相当复杂,这就是我们使用自定义相等检查
areContentsTheSame和areItemsTheSame.但是,适配器有两个东西
hasStableIds和getItemId.
问题是getItemId返回 along并且我们元素的标识不能以long稳定的方式合并为 a (尽管考虑到我们在 diffutil 回调中的自定义相等检查,否则稳定。
问题是这样的:
在这种情况下如何处理,hasStableIds以及getItemId当 DiffUtil 将更改推送到适配器时是否使用了这些?