我搜索项目,每次从服务器获取时,当我搜索“o”时它会工作,然后“ot”它会再次工作,作为“o”搜索的结果,我假设有 20 个项目,以防万一“ot”我有 10 个项目是这 20 个项目的一部分,我确实在 EditText 中删除了 t 它仅显示 20 个项目 recyclerview 滚动指示器在中间 这是我的 diffUtil 代码
ListAdapter<Asset, SearchAdapter.ViewHolder>(object : DiffUtil.ItemCallback<Asset>() {
override fun areItemsTheSame(oldItem: Asset, newItem: Asset): Boolean {
return oldItem.assetId == newItem.assetId && oldItem.originalTitle ==newItem.originalTitle
}
override fun areContentsTheSame(oldItem: Asset, newItem: Asset): Boolean {
return oldItem == newItem
}
}
viewModel.searchAssets.observe(viewLifecycleOwner, Observer {
searchAdapter.submitList(it)
})
在这里你可以看到我拍摄的视频 https://drive.google.com/drive/folders/1ia5y9TtL0PSAM1M4hVBILWcdSK1BDyKI?usp=sharing