如何访问 RecyclerView 中隐藏的 ItemView
How get access to hidden ItemView in a RecyclerView
感谢您的光临!
所以我的问题是我有一个 RecyclerView,它可以包含我想要的项目。在这个项目上,当我 select 时,它会显示他已 selected。当我 select 它时,我需要取消 select 我以前的 selected。但如果他不在视野中,我就无法进入视野。
我试着用逻辑来判断当他再次绑定时它是否被 select 编辑,但是有些项目无法访问并且在你滑动时不会自行重绘它们所以他们一直卡在 selected...
有人看到解决方法吗?
谢谢你的时间,我知道这里没有代码。但我不知道我能给你看什么,因为比实施解决方案更需要想法。
听起来您正在将项目的选定状态存储在 RecyclerViewHolders 本身中,您不应该这样做。 RecyclerViewHolders 中显示的状态数据应该存储在 ViewHolders 本身之外,并在更新事件期间根据需要传入。当您的 ViewHolder 进入和离开视图时,它们将在您无法控制的情况下被重置和重新创建,因此 ViewHolder 需要能够随时从其初始状态变为可查看状态,并且您不能依赖状态要维护的 ViewHolder。
感谢您的光临!
所以我的问题是我有一个 RecyclerView,它可以包含我想要的项目。在这个项目上,当我 select 时,它会显示他已 selected。当我 select 它时,我需要取消 select 我以前的 selected。但如果他不在视野中,我就无法进入视野。
我试着用逻辑来判断当他再次绑定时它是否被 select 编辑,但是有些项目无法访问并且在你滑动时不会自行重绘它们所以他们一直卡在 selected...
有人看到解决方法吗?
谢谢你的时间,我知道这里没有代码。但我不知道我能给你看什么,因为比实施解决方案更需要想法。
听起来您正在将项目的选定状态存储在 RecyclerViewHolders 本身中,您不应该这样做。 RecyclerViewHolders 中显示的状态数据应该存储在 ViewHolders 本身之外,并在更新事件期间根据需要传入。当您的 ViewHolder 进入和离开视图时,它们将在您无法控制的情况下被重置和重新创建,因此 ViewHolder 需要能够随时从其初始状态变为可查看状态,并且您不能依赖状态要维护的 ViewHolder。