Android 如何使用RecyclerView实现ViewCacheExtension?
我找不到任何使用ViewCacheExtension的示例或场景。文件说: 调用getViewForPosition(int)时,回收者会检查附加的废料 和一级缓存以查找匹配的视图。如果找不到 在合适的视野下,回收商将呼叫 检查前获取位置和类型(回收器、整型、整型)的视图 RecycleView.RecycledViewPool 我有几个相关的疑问:Android 如何使用RecyclerView实现ViewCacheExtension?,android,android-recyclerview,Android,Android Recyclerview,我找不到任何使用ViewCacheExtension的示例或场景。文件说: 调用getViewForPosition(int)时,回收者会检查附加的废料 和一级缓存以查找匹配的视图。如果找不到 在合适的视野下,回收商将呼叫 检查前获取位置和类型(回收器、整型、整型)的视图 RecycleView.RecycledViewPool 我有几个相关的疑问: 据我所知,随附的废纸是一个不需要重新整理的视图列表。但什么是“一级缓存” 方法文档说明: 此方法不应创建新视图 我还可以如何返回视图?我能想到的唯
即使在查看了RecyclerView源代码之后,我也找不到正在实现的ViewCacheExtensions的引用。我遇到了类似的问题,因为我需要缓存recycler视图项(我正在扩展RecyclerView中使用的视图,并且大小是可变的……因此每次都会出现视图膨胀和突然的抖动) 已经提供了recycler视图缓存,我想recycler视图会这样做,只是缓存大小设置为零 因此,当我添加这行缓存是成功的,这只是第一次
mRecyclerView.setItemViewCacheSize(data.getCount());
但如果用户只想缓存特定的视图,我也会感到困惑。如果你得到什么,请发邮件
希望有帮助:)谢谢。我也采取了类似的方法,但我不确定data.getCount()太大对内存的副作用。RecyclerView中默认的
ItemViewCacheSize
为2。这用于在用户滚动时保留项目。如果将其设置为与数据大小相等,则RecyclerView将无法完成其工作。我不会回收任何东西。您将失去大部分性能增益。您可以从本文中找到演示:ViewCacheExtension可用于保存特殊视图,因此我们可能不需要实现此功能。