我正在使用 LinearLayoutManager
创建水平对齐的 RecyclerView
。由于我正在绘制项目的边界,因此在滚动过程中,来自外部左右邻居的重叠绘图会消失,因为 View 会被回收。
有没有办法指示 Adapter 或 LayoutManager 始终保持 x + 2
View ?
我希望 RecyclerView.setItemViewCacheSize( int size )
能为我解决这个问题,但 View 似乎仍然分离。
最佳答案
您不能使用 LinearLayoutManager
在 RecyclerView
的边界外绘制,并期望 View 在其边界离开 RecyclerView 的边界后继续绘制。
您应该更好地表述您的问题。您提供的细节很少,并希望有人帮助您使不合适的解决方案奏效。
您应该在除 View 0 之外的每个 View 之前添加 RecyclerView.ItemDecoration
。例如https://gist.github.com/alexfu/0f464fc3742f134ccd1e
为什么要在每个 View 之前添加分隔线?因为这样一来,当我们添加/删除面包屑时,我们就不需要在最后一个 View 后面是否有分隔符之间来回更改。这意味着更少的工作和更好的性能。
关于android - 防止 RecyclerView 中的直接邻居被分离和回收,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32607667/